This media is not supported in your browser
VIEW IN TELEGRAM
Раз уж сегодня затрагиваем тему PBR, то поделюсь одной потрясающей статьёй на тему. Это интерактивное объяснение как работает физически корректный рендеринг (PBR) с самых азов.
Прям вот с самого начала, не шучу:
— сначала объясняется природа электромагнитных волн, заряд частиц и генерация фотонов;
— затем идёт разбор абстракций: закон Снеллиуса, преломление, отражение и уравнения Френеля;
— в конце показано, как всё это объединяется в микрофасетную модель (BRDF), которая сейчас используется во всех современных игровых движках.
Все эти сложные концепции сопровождаются интерактивными 3D-демонстрациями, написанными на чистом WebGL. Вы можете сами двигать ползунки, менять шероховатость материалов, интенсивность света и индексы преломления, чтобы в реальном времени видеть, как меняется направление лучей и итоговая картинка.
Сама статья: https://imadrahmoune.com/pbr/
@make_game (теперь и в Max)
Прям вот с самого начала, не шучу:
— сначала объясняется природа электромагнитных волн, заряд частиц и генерация фотонов;
— затем идёт разбор абстракций: закон Снеллиуса, преломление, отражение и уравнения Френеля;
— в конце показано, как всё это объединяется в микрофасетную модель (BRDF), которая сейчас используется во всех современных игровых движках.
Все эти сложные концепции сопровождаются интерактивными 3D-демонстрациями, написанными на чистом WebGL. Вы можете сами двигать ползунки, менять шероховатость материалов, интенсивность света и индексы преломления, чтобы в реальном времени видеть, как меняется направление лучей и итоговая картинка.
Сама статья: https://imadrahmoune.com/pbr/
@make_game (теперь и в Max)
🔥4❤2
This media is not supported in your browser
VIEW IN TELEGRAM
POV: ты просыпаешься и понимаешь, что игра, которую ты планировал сделать за шесть месяцев, находится в разработке уже третий год
❤19😢9😁8💯7🤣1
Добро пожаловать в еженедельную тестовую камеру.
Сегодняшнее испытание предельно простое: показать, что вы успели собрать, нарисовать, запрограммировать или хотя бы не сломать за неделю.
Пожалуйста, разместите в комментариях скриншоты, видео, демки и ссылки на свои проекты. Участники, у которых всё развалилось после очередного фикса, тоже считаются успешно прошедшими тест.
Субботний скриншотник начался. Торт, как обычно, будет потом.
Сегодняшнее испытание предельно простое: показать, что вы успели собрать, нарисовать, запрограммировать или хотя бы не сломать за неделю.
Пожалуйста, разместите в комментариях скриншоты, видео, демки и ссылки на свои проекты. Участники, у которых всё развалилось после очередного фикса, тоже считаются успешно прошедшими тест.
Субботний скриншотник начался. Торт, как обычно, будет потом.
1❤7
Итак, это свершилось, Nvidia анонсировала DLSS 5: теперь ИИ будет перерисовывать игры на лету и делать из задумки авторов непонятное месиво.
Для тех, кто без интернета: осенью выйдет новое поколение DLSS, и оно кардинально отличается от предыдущих версий. Если раньше технология просто растягивала картинку (апскейл) или вставляла промежуточные кадры для плавности, то теперь в дело вступает полноценный генеративный ИИ.
В чем суть:
— нейросеть на лету анализирует структуру сцены (освещение, материалы, персонажей) и динамически её «улучшает»;
— Дженсен Хуанг назвал это «GPT-моментом для графики»;
— идея в том, чтобы повысить реализм без дополнительных нагрузок на железо.
Технологию уже прозвали «мусорным ИИ-фильтром». На первых демо (включая Starfield и Assassin’s Creed) видно, что нейросеть сильно искажает изначальную задумку художников: самовольно меняет освещение, текстуры и стилистику персонажей.
Nvidia обещает дать студиям инструменты для контроля интенсивности этого фильтра. Но сам факт того, что видеокарта теперь занимается не оптимизацией производительности, а перерисовкой чужого арта, мягко говоря, нуждается в обсуждении.
@make_game (теперь и в Max)
Для тех, кто без интернета: осенью выйдет новое поколение DLSS, и оно кардинально отличается от предыдущих версий. Если раньше технология просто растягивала картинку (апскейл) или вставляла промежуточные кадры для плавности, то теперь в дело вступает полноценный генеративный ИИ.
В чем суть:
— нейросеть на лету анализирует структуру сцены (освещение, материалы, персонажей) и динамически её «улучшает»;
— Дженсен Хуанг назвал это «GPT-моментом для графики»;
— идея в том, чтобы повысить реализм без дополнительных нагрузок на железо.
Технологию уже прозвали «мусорным ИИ-фильтром». На первых демо (включая Starfield и Assassin’s Creed) видно, что нейросеть сильно искажает изначальную задумку художников: самовольно меняет освещение, текстуры и стилистику персонажей.
Nvidia обещает дать студиям инструменты для контроля интенсивности этого фильтра. Но сам факт того, что видеокарта теперь занимается не оптимизацией производительности, а перерисовкой чужого арта, мягко говоря, нуждается в обсуждении.
@make_game (теперь и в Max)
Media is too big
VIEW IN TELEGRAM
🙈15🤣4🔥2💊1
Каждый год во время конференции GDC площадка Sonniss делится бесплатной библиотекой звуковых эффектов для геймдева. Сейчас они выложили свежий архив на 7,5 гигабайт качественного аудио (ссылка на скачивание, лицензия).
Все аудио:
— royalty-free и полностью открыты для коммерции;
— указывать создателей в титрах не обязательно;
— ассеты остаются у вас навсегда для любого количества проектов.
Ссылки на предыдущие такие раздачи есть здесь.
@make_game (теперь в VK и Max)
Все аудио:
— royalty-free и полностью открыты для коммерции;
— указывать создателей в титрах не обязательно;
— ассеты остаются у вас навсегда для любого количества проектов.
Ссылки на предыдущие такие раздачи есть здесь.
@make_game (теперь в VK и Max)
🔥5❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Просто оставлю это здесь и дам ссылку где можно поиграть: https://eyebrow-tetris.sanderdesnaijer.com
@make_game (теперь в VK и Max)
@make_game (теперь в VK и Max)
1😁7❤2🔥2
Ты заходишь в канал и видишь два варианта.
Синяя кнопка — молча листать чужие проекты и делать вид, что у тебя всё под контролем.
Красная кнопка — открыть папку с последним билдом, выбрать лучшие кадры и показать, насколько глубока кроличья нора твоего геймдева.
Сегодня у нас, как ты уже понял, красная кнопка. Субботний скриншотник открыт: делитесь прогрессом, кидайте демки, видео и ссылки. Посмотрим, что у вас по эту сторону рендера.
@make_game (теперь в VK и Max)
Синяя кнопка — молча листать чужие проекты и делать вид, что у тебя всё под контролем.
Красная кнопка — открыть папку с последним билдом, выбрать лучшие кадры и показать, насколько глубока кроличья нора твоего геймдева.
Сегодня у нас, как ты уже понял, красная кнопка. Субботний скриншотник открыт: делитесь прогрессом, кидайте демки, видео и ссылки. Посмотрим, что у вас по эту сторону рендера.
@make_game (теперь в VK и Max)
❤5👍3❤🔥1
Forwarded from Сохранёнки программиста
Разработчик Эрик Ленгьел (Eric Lengyel) сделал огромный подарок для индустрии графики и геймдева. Он досрочно, за 12 лет до истечения срока, передал патент на свой знаменитый алгоритм Slug в общественное достояние.
Slug — это метод рендеринга шрифтов (и векторной графики) на GPU напрямую из кривых Безье, вообще без использования предзапечённых текстур или атласов. Это позволяет отрисовывать идеально чёткий, сглаженный текст любого размера и под любым углом. Алгоритм уже 10 лет является индустриальным стандартом: лицензию на него покупали Blizzard, id Software, Adobe, Ubisoft и другие гиганты.
Главная математическая фишка последних версий Slug — это «динамическое расширение» (dynamic dilation). Вершинный шейдер на лету высчитывает матрицу трансформации и автоматически расширяет полигон каждого глифа ровно на полпикселя в экранном пространстве. Это гарантирует, что растеризатор не потеряет ни одного сглаженного пикселя на границах букв, и при этом не тратит ресурсы GPU на отрисовку лишнего пустого пространства (как это бывает при фиксированном отступе).
Теперь использовать эту технологию можно абсолютно бесплатно в любых проектах. Автор уже выложил эталонные шейдеры (вершинный и пиксельный) на GitHub под лицензией MIT: https://github.com/EricLengyel/Slug
@prog_stuff
Slug — это метод рендеринга шрифтов (и векторной графики) на GPU напрямую из кривых Безье, вообще без использования предзапечённых текстур или атласов. Это позволяет отрисовывать идеально чёткий, сглаженный текст любого размера и под любым углом. Алгоритм уже 10 лет является индустриальным стандартом: лицензию на него покупали Blizzard, id Software, Adobe, Ubisoft и другие гиганты.
Главная математическая фишка последних версий Slug — это «динамическое расширение» (dynamic dilation). Вершинный шейдер на лету высчитывает матрицу трансформации и автоматически расширяет полигон каждого глифа ровно на полпикселя в экранном пространстве. Это гарантирует, что растеризатор не потеряет ни одного сглаженного пикселя на границах букв, и при этом не тратит ресурсы GPU на отрисовку лишнего пустого пространства (как это бывает при фиксированном отступе).
Теперь использовать эту технологию можно абсолютно бесплатно в любых проектах. Автор уже выложил эталонные шейдеры (вершинный и пиксельный) на GitHub под лицензией MIT: https://github.com/EricLengyel/Slug
@prog_stuff
❤🔥29❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Инди-разработчик выложил в открытый доступ полезную систему поиска пути (Pathfinding), которую он написал для своей 2D-игры про автоматизацию (где вместо конвейеров ресурсы таскают маленькие дроны).
Главная проблема, с которой он столкнулся — это конфликт двух разных типов движения. Нужно было объединить жёсткую логистику по сетке с плавным перемещением толпы (как в классических RTS).
В итоге получилась гибридная система, которая умеет работать в двух режимах:
— RTS Mode: Вы можете выделить сразу толпу агентов и отправить их в одну точку. Они плавно огибают препятствия с помощью стандартного
— Strict Route: Режим для фабричной логистики. Агенты идут по жёстко заданным направляющим на карте. Они заранее резервируют за собой клетки в матрице по пути следования, чтобы умно регулировать трафик и избегать столкновений на перекрёстках.
Исходный код полностью открыт на GitHub, можно свободно забирать в свои проекты или дорабатывать математику векторов: https://github.com/T-Toni/AGENT_SYSTEM
@make_game
Главная проблема, с которой он столкнулся — это конфликт двух разных типов движения. Нужно было объединить жёсткую логистику по сетке с плавным перемещением толпы (как в классических RTS).
В итоге получилась гибридная система, которая умеет работать в двух режимах:
— RTS Mode: Вы можете выделить сразу толпу агентов и отправить их в одну точку. Они плавно огибают препятствия с помощью стандартного
mp_grid, но в движении отвязываются от сетки. Чтобы толпа не слипалась в одну точку по прибытии, автор прикрутил алгоритм Бойдсов (Boids) для отталкивания и спираль Улама для поиска свободных парковочных мест вокруг цели.
— Strict Route: Режим для фабричной логистики. Агенты идут по жёстко заданным направляющим на карте. Они заранее резервируют за собой клетки в матрице по пути следования, чтобы умно регулировать трафик и избегать столкновений на перекрёстках.
Исходный код полностью открыт на GitHub, можно свободно забирать в свои проекты или дорабатывать математику векторов: https://github.com/T-Toni/AGENT_SYSTEM
@make_game
❤10❤🔥3👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Релиз, который я пропустил на прошлой неделе, но вот исправляюсь — picoCAD 2. Это небольшая программа для создания низкополигональных 3D моделей. Первая часть была написана на PICO-8 и стала довольно популярной, но упёрлась в ограничения платформы. Сиквел перевели на фреймворк LÖVE, поэтому редактор теперь работает намного плавнее.
Инструмент создавался как простая альтернатива большим 3D редакторам вроде Blender. Если вы работаете с пиксельной графикой и хотите без лишних сложностей добавить элементы 3D в свой проект, это отличный вариант.
Программа доступна на Steam и Itch.io. Обе версии продаются без DRM и работают полностью оффлайн.
@make_game
Инструмент создавался как простая альтернатива большим 3D редакторам вроде Blender. Если вы работаете с пиксельной графикой и хотите без лишних сложностей добавить элементы 3D в свой проект, это отличный вариант.
Программа доступна на Steam и Itch.io. Обе версии продаются без DRM и работают полностью оффлайн.
@make_game
❤8👍3😍1
Министерство геймдева уведомляет:
сегодня открывается Субботний скриншотник, и всем ученикам факультетов Программирования, Арта, Дизайна и Вечного Переписывания Туториалов надлежит явиться в комментарии.
Разрешается приносить скриншоты, демки, ролики, гифки и ссылки на собственные проекты. Даже если ваш проект пока похож не на магию, а на заклинание, произнесённое с ошибкой, — всё равно показывайте. Лучшие работы получают уважение, реакции и плюс к навыку «довести до релиза».
@make_game (теперь в VK и Max)
сегодня открывается Субботний скриншотник, и всем ученикам факультетов Программирования, Арта, Дизайна и Вечного Переписывания Туториалов надлежит явиться в комментарии.
Разрешается приносить скриншоты, демки, ролики, гифки и ссылки на собственные проекты. Даже если ваш проект пока похож не на магию, а на заклинание, произнесённое с ошибкой, — всё равно показывайте. Лучшие работы получают уважение, реакции и плюс к навыку «довести до релиза».
@make_game (теперь в VK и Max)
❤6👍1
Сервер Quake 3, который работает прямо в браузере. Проект доступен по адресу https://q3.pieter.com/. Вы можете просто перейти по ссылке и сразу начать играть вместе с другими людьми, устанавливать локальный клиент не нужно.
Технически все это работает на базе Q3JS. Это открытый порт оригинального движка на JavaScript. Разработчик взял готовый репозиторий, интегрировал в него свежие исправления для повышения стабильности и развернул игру на своих серверах. Оригинальные текстуры и карты подтягиваются из официальной демоверсии.
Текущий статус:
— полноценный мультиплеер работает без долгих загрузок;
— движок выдаёт стабильную частоту кадров прямо в браузере;
— в планах стоит добавление поддержки виртуальных геймпадов для игры со смартфонов.
@make_game (теперь в VK и Max)
Технически все это работает на базе Q3JS. Это открытый порт оригинального движка на JavaScript. Разработчик взял готовый репозиторий, интегрировал в него свежие исправления для повышения стабильности и развернул игру на своих серверах. Оригинальные текстуры и карты подтягиваются из официальной демоверсии.
Текущий статус:
— полноценный мультиплеер работает без долгих загрузок;
— движок выдаёт стабильную частоту кадров прямо в браузере;
— в планах стоит добавление поддержки виртуальных геймпадов для игры со смартфонов.
@make_game (теперь в VK и Max)
👍8❤2🔥1
Разработчик Нильс Линхир портировал Doom в браузер с 3D рендерингом на чистом CSS. Игровая логика написана на JavaScript, но для вывода графики автор принципиально отказался от Canvas и WebGL. Вся визуализация переложена на браузерный движок стилей.
Детали реализации:
— каждый объект и текстура представлены обычным тегом div;
— позиционирование в пространстве работает через CSS-трансформации;
— геометрия вычисляется нативными CSS-функциями
— сложная архитектура уровней вырезается свойством
Технический разбор архитектуры и нюансов производительности: https://tprg.ru/yGpg
@make_game (теперь в VK и Max)
Детали реализации:
— каждый объект и текстура представлены обычным тегом div;
— позиционирование в пространстве работает через CSS-трансформации;
— геометрия вычисляется нативными CSS-функциями
hypot и atan2;— сложная архитектура уровней вырезается свойством
clip-path.Технический разбор архитектуры и нюансов производительности: https://tprg.ru/yGpg
@make_game (теперь в VK и Max)
🔥16🤪5🥱1🤣1
Разработчик-плейтестер поиграл в 22+ инди-игры от разных авторов и выкатил базу — список самых частых ошибок, которые кочуют из проекта в проект.
— Анимируйте главное меню. Статичный экран сразу кричит «недоделано». Даже зацикленные частицы на фоне добавляют жизни. И да — не забывайте крупно писать в меню название игры, вы удивитесь, как часто инди-разрабы это упускают.
— Динамическое управление. Если игра поддерживает и клавиатуру, и геймпад, кнопки в интерфейсе должны переключаться на лету. Нет ничего хуже, чем видеть в туториале Press X, сидя за клавиатурой.
— Короткое демо без багов лучше длинного сломанного. Оставили забагованный уровень в публичной демке «просто чтобы показать масштаб»? Игроки запомнят только баги. Если уровень сырой — безжалостно вырезайте.
— Хардкор должен быть честным. Если игра внезапно убивает ваншотом из-за новой механики, игнорируя полоску ХП — это бесит. Игрок должен чётко понимать, что смерть была его ошибкой, а не произволом геймдизайнера.
— Туториалы — боль. То, что кажется вам очевидным спустя год разработки, абсолютно непонятно новичку. Но «стены текста» не работают: если на объяснение уходит абзац, его просто скипнут. Вводите механики постепенно через геймплей (show, don't tell).
— Весело на бумаге, скучно в билде. Механика может звучать гениально в диздоке, но если вам самому скучно тестировать её дольше 20 минут — смело переделывайте. Игрокам она тоже не зайдет.
Оригинальный тред на английском.
@make_game (теперь в VK и Max)
— Анимируйте главное меню. Статичный экран сразу кричит «недоделано». Даже зацикленные частицы на фоне добавляют жизни. И да — не забывайте крупно писать в меню название игры, вы удивитесь, как часто инди-разрабы это упускают.
— Динамическое управление. Если игра поддерживает и клавиатуру, и геймпад, кнопки в интерфейсе должны переключаться на лету. Нет ничего хуже, чем видеть в туториале Press X, сидя за клавиатурой.
— Короткое демо без багов лучше длинного сломанного. Оставили забагованный уровень в публичной демке «просто чтобы показать масштаб»? Игроки запомнят только баги. Если уровень сырой — безжалостно вырезайте.
— Хардкор должен быть честным. Если игра внезапно убивает ваншотом из-за новой механики, игнорируя полоску ХП — это бесит. Игрок должен чётко понимать, что смерть была его ошибкой, а не произволом геймдизайнера.
— Туториалы — боль. То, что кажется вам очевидным спустя год разработки, абсолютно непонятно новичку. Но «стены текста» не работают: если на объяснение уходит абзац, его просто скипнут. Вводите механики постепенно через геймплей (show, don't tell).
— Весело на бумаге, скучно в билде. Механика может звучать гениально в диздоке, но если вам самому скучно тестировать её дольше 20 минут — смело переделывайте. Игрокам она тоже не зайдет.
Оригинальный тред на английском.
@make_game (теперь в VK и Max)
👍15❤9👎2
Прямо в браузере: разработчик написал софтверный 3D-рендер в стиле Commodore 64 на чистом C и скомпилировал его в WebAssembly. Проект называется Pommidore64.
Никакого WebGL или аппаратного ускорения, всё рисуется исключительно силами процессора. Движок умеет парсить стандартные
Самое приятное, что из-за WebAssembly всё это работает полностью в оффлайне на стороне клиента. Можно закинуть свою модельку и посмотреть, как бы она выглядела на железе из 80-х.
Пример того, как сегодня можно использовать Wasm для переноса низкоуровневого графического кода прямо в веб.
Пощупать движок:
https://kureca8.github.io/Pommidore64/
@make_game (теперь в VK и Max)
Никакого WebGL или аппаратного ускорения, всё рисуется исключительно силами процессора. Движок умеет парсить стандартные
.OBJ модели и рендерить их в эстетике ретро-машин: поддерживается отрисовка сплошными полигонами (solid), wireframe-каркасы и несколько алгоритмов дизеринга для имитации ограниченной цветовой палитры C64.Самое приятное, что из-за WebAssembly всё это работает полностью в оффлайне на стороне клиента. Можно закинуть свою модельку и посмотреть, как бы она выглядела на железе из 80-х.
Пример того, как сегодня можно использовать Wasm для переноса низкоуровневого графического кода прямо в веб.
Пощупать движок:
https://kureca8.github.io/Pommidore64/
@make_game (теперь в VK и Max)
❤13😁4👍2😍1
Итак, что мы имеем?
Следы ночной сборки, отпечатки дедлайна на календаре, подозрительно молчащий трекер задач и папку, полную скриншотов, которые явно кто-то собирался показать ещё вчера.
Вывод очевиден: настало время Субботнего скриншотника.
Публикуйте в комментариях свои демки, гифки, видео, скриншоты и ссылки на проекты.
Никакая улика не будет проигнорирована, особенно если она работает в 60 FPS.
@make_game (теперь в VK и Max)
Следы ночной сборки, отпечатки дедлайна на календаре, подозрительно молчащий трекер задач и папку, полную скриншотов, которые явно кто-то собирался показать ещё вчера.
Вывод очевиден: настало время Субботнего скриншотника.
Публикуйте в комментариях свои демки, гифки, видео, скриншоты и ссылки на проекты.
Никакая улика не будет проигнорирована, особенно если она работает в 60 FPS.
@make_game (теперь в VK и Max)
✍7🔥6❤2
Разработчик на Reddit поделился болью, с которой рано или поздно сталкивается каждый, кто делает хардкорную игру. Он строил механику перманентной смерти как основу всего геймплея, где каждая смерть это прям событие. Пришли плейтестеры. Начали rage quit'ить и уходить.
Главный инсайт из треда: пермасмерть работает, когда игрок сам выбирает этот уровень риска, а не когда он навязан. Лучшие примеры (Path of Exile Hardcore, Baldur's Gate 3) — это всегда опция, а не единственный режим.
Что реально помогает, если хочется сохранить напряжение без потери аудитории:
— Мета-прогрессия. Часть достижений сохраняется между ранами, игрок чувствует рост, даже умирая. Hades как классический пример.
— Короткие сессии. Если рана занимает 20 минут, смерть болезненна, но не катастрофична. Если вечер, то теряете игрока навсегда.
— Честный онбординг. Игрок должен понимать ставки ещё до того, как инвестировал несколько часов.
Раздел комментариев в треде — отличный срез мнений для всех, кто сейчас принимает эти решения в дизайне своей игры.
@make_game (теперь в VK и Max)
Главный инсайт из треда: пермасмерть работает, когда игрок сам выбирает этот уровень риска, а не когда он навязан. Лучшие примеры (Path of Exile Hardcore, Baldur's Gate 3) — это всегда опция, а не единственный режим.
Что реально помогает, если хочется сохранить напряжение без потери аудитории:
— Мета-прогрессия. Часть достижений сохраняется между ранами, игрок чувствует рост, даже умирая. Hades как классический пример.
— Короткие сессии. Если рана занимает 20 минут, смерть болезненна, но не катастрофична. Если вечер, то теряете игрока навсегда.
— Честный онбординг. Игрок должен понимать ставки ещё до того, как инвестировал несколько часов.
Раздел комментариев в треде — отличный срез мнений для всех, кто сейчас принимает эти решения в дизайне своей игры.
@make_game (теперь в VK и Max)
👍10🏆3❤🔥1🆒1