Новости


Алгоритм быстрого и простого объёмного рендеринга

Недавно я написал небольшой ShaderToy, выполняющий простой объёмный рендеринг, а затем решил опубликовать пост с объяснением его работы. Сам интерактивный ShaderToy можно посмотреть здесь. Если вы читаете с телефона или ноутбука, то рекомендую посмотреть эту быструю версию.

Вещи, которые я бы хотел знать до начала разработки собственной игры

Последние два года я в свободное от основной работы время разрабатывал личный проект — игру, которую выпустил в Steam пару месяцев назад. На протяжении всего процесса я делал много ошибок, и вел записи для своего «прошлого я».

Чем больше, тем хуже или почему важен игровой цикл

По мере эволюции геймдизайна в течение последних 20 лет, продолжительность игр постоянно увеличивалась. В The Witcher 3 легко можно наиграть сотни часов, а Factorio или Dwarf Fortress можно вообще перепроходить не один раз.

ASCII игра — компромисс аутентичности и удобства

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

Ад инди-разработчика или как довести свой проект до релиза и не застрелиться в процессе

Когда мои друзьязнакомыесобутыльники узнают о том, что я разработчик игр, они приходят в дикий восторг, смешанный с белой завистью. “О, да ты шо, когда новый Ассасин выпустишь? ” — “Ого, вот это кайф.

Это норма: что такое карты нормалей и как они работают

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

Understandable RayTracing in 256 lines of bare C++

Understandable RayTracing in 256 lines of bare C++ This is another chapter from my brief course of lectures on computer graphics. This time we are talking about the ray tracing. As usual, I try to avoid third-party libraries, as I believe that it makes students check what's happenning under the hood. Also check the tinykaboom […]

Another Way — LFS, Multi User и текущий прогресс инди Action-RPG

Всем привет! Прошло немногим больше месяца и по традиции я спешу поделиться прогрессом нашей авантюры, серии под названием “Через тернии к игре мечты”. Хочу напомнить, что же тут происходит. Мы разрабатываем игру Another way — Нелинейная Action/RPG от третьего лица с элементами интерактивного кино, выполненная в лучших традициях средневекового Fantasy, на базе собственной вселенной. Разработка […]

Легендарная игра MS Flight Simulator возвращается спустя 12 лет

Microsoft Flight Simulator — игра, которая внесена в Книгу рекордов Гиннесса как самая длительная игровая серия (выпускалась с 1982 года) и которая безвременно скончалась в 2007 году Фанатам оставалось с грустью запускать старые версии, паря над уже знакомыми городами и снежными вершинами.

Создание процедурного генератора головоломок

В этом посте описывается генератор уровней для моей игры-головоломки Linjat. Пост можно читать и без подготовки, но он легче усвоится, если сыграть в несколько уровней. Исходный код я выложил на github; всё обсуждаемое в статье находится в файле src/main.

В этой статье слишком много воды

«Мы начинаем разработку новой игры, и нам нужна классная вода. Такую сможешь?» , — cпросили меня. «Да не вопрос! Конечно, смогу», — ответил я, но голос предательски задрожал. «А, еще и на Unity?», — и мне стало понятно, что впереди очень много работы.

Reflective Shadow Maps:

Привет! В данной статье представлена простая реализация Reflective Shadow Maps (алгоритм описан в предыдущей статье). Далее я объясню, как я это сделал и какие подводные камни были. Также будут рассмотрены некоторые возможные оптимизации.

Математическая модель игры Доббль

Математическая модель игры Доббль Уровни сложности чтения Я слишком молод, чтобы думать Введение и правила игры Как они это делают? Матрица инцидентности для игры Доббль Каких двух карточек не хватает в комплекте игры? Почему в игре на 2 карточки меньше максимально возможного количества? Благодарности Сделай мне умно Введение и правила игры Как они это делают? […]

Работа с внешними ресурсами в Unity 3d

Введение Здравствуйте уважаемые читатели, сегодня речь пойдет о работе с внешними ресурсами в среде Unity 3d. По традиции, для начала определимся, что это и зачем нам это надо. Итак, что же такое эти внешние ресурсы.

Делаем свой запускатор Minecraft без лаунчера

Привет всем! Сегодня мы напишем простенький лаунчер для игры Minecraft. Реализовывать мы это будем с помощью CMD в Win 7, и поместим это все в файл расширения ". bat". Далее пот катом. Поехали! Скажу сразу: «Все манипуляции производятся с версией Minecraft 1.

Job system и поиск пути

Карта В предыдущей статье я разобрал, что из себя представляет новая система задач Job system, как она работает, как создавать задачи, наполнять их данными и выполнять многопоточные вычисления и лишь в двух словах объяснил где можно использовать эту систему.

Обзор техник реализации игрового ИИ

Введение Эта статья познакомит вас с широким диапазоном концепций искусственного интеллекта в играх («игрового ИИ»), чтобы вы понимали, какие инструменты можно использовать для решения задач ИИ, как они работают совместно и с чего можно начать их реализацию в выбранном движке.

UE4 | Инвентарь для Multiplayer #2 | Подключение Blueprint к C++

Список статей UE4 | Инвентарь для Multiplayer #1 | Хранилище данных на DataAsset UE4 | Инвентарь для Multiplayer #2 | Подключение Blueprint к C++ В предыдущей статье я рассказывал как создать DataAsset, и почему он такой хороший и удобный.

Производственный ад «S.T.A.L.K.E.R.: Тень Чернобыля»

История разработки культовой игры-долгостроя S. T. A. L. K. E. R. : Shadow of Chernobyl, созданной украинской компанией GSC GameWorld и выпущенной в 2007 году, долгое время была окутана немалым количеством легенд.

Как портирование игры на PSVita повысило общую производительность

На уровне могут находиться тысячи врагов. У игры Defender's Quest: Valley of the Forgotten DX всегда были давние проблемы со скоростью, и мне наконец удалось их решить. Основным стимулом к масштабному повышению скорости стал наш порт на PlayStation Vita.

Unity3D: архитектура игры, ScriptableObjects, синглтоны

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

Процедурная генерация лабиринтов в Unity

Примечание: этот туториал написан для Unity 2017. 1. 0 и предназначен для опытных пользователей. Подразумевается, что вы уже хорошо знакомы с программирование игр в Unity. Вы, как Unity-разработчик, наверно, имеете достаточный опыт в создании уровней вручную.

Learn OpenGL. Урок 5.1 — Продвинутое освещение. Модель Блинна-Фонга

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

Разработка игр под NES на C. Глава 24. Приложение 2 — работа с банками памяти

Завершающая часть цикла. В этой главе рассмотрим работу с маппером MMC3 на примерах <<< предыдущая Источник Раньше мы не использовали переключение банков памяти, но теперь настало время освоить маппер MMC3.

Unity выложила исходный C#-код на Github

Возрадуйтесь все, кому хоть раз в силу жизненной необходимости приходилось декомпилировать . NET-код Unity! Теперь код C#-части движка и редактора Unity доступен для изучения на Github. Доступны все основные ветки, начиная с версии 2017.

Unreal Engine 4 — как устроенна навигация в NavMeshBoundsVolume

Всем доброго времени суток. Меня зовут Александр Сироткин сейчас моя задача овладеть всеми тонкостями программирования на игровом движке Unreal Engine 4. Возникла задача написать NPC или ИИ и при этом соответственно, каждый персонаж должен передвигаться на своей собственной территории в случайную точку.

6 интересных багов, с которыми я столкнулся, пока делал игру для ВКонтакте

Мне нравится делать игры, это мое хобби. В общей сложности около года в свободное время я делал игру на javascript для ВКонтакте. В настоящее время игра доделана, запущена, прошла модерацию ВКонтакте и доступна в каталоге игр.

Ошибки новичка Unity, испытанные на собственной шкуре

Привет. Это снова я, Илья Кудинов, QA-инженер из компании Badoo. Но сегодня я расскажу не о тестировании (этим я уже занимался в понедельник), а о геймдеве. Нет, этим мы в Badoo не занимаемся, разрабатывать компьютерные игры — моё хобби.

Как оживить картинку в браузере. Многопроходный рендеринг в WebGL

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

Игра на Unity, с открытым кодом

Черная пятница, черная пятница… надоело. Объявляю свой личный Белый понедельник — за пару ночей написал небольшую игру и выкладываю ее код на всеобщее пользование, со скидкой 90%. Зачем мне это надо? Ну я вижу следующие плюсы — тот самый открытый код для поиска работы (да да, сейчас я нахожусь в активном поиске), почитать в комментариях […]

UniRx — Rx для Unity3d

Всем привет! Давно уже хотел написать статью о UniRx на Unity3d. Начнем с небольшой философии RX программирования. Например, разрабатывая игру, мы создаем кнопку, наблюдаем событие клика этой кнопки и реагируем на это каким нибудь кодом.

Интеграция физических тел полученных в редакторе Physics Body Editor в cocos2d-x-сцену

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

Почему визуальное программирование и D3NE могут быть Вам полезны

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

Проектирование системы для считывания данных с устройств ввода

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

Надоело писать PropertyDrawer в Unity? Есть способ лучше

Не так давно я участвовал в разработке игры на Unity. Много времени уделял инструментам для коллег: редактор уровней для геймдизайнера, удобные базы данных для художников. По понятным причинам, в программировании интерфейсов под Unity мы не всегда можем использовать автоматическую разметку (удобные средства GUILayout), и нередко приходится вручную нарезать прямоугольники и рисовать интерфейсы средствами класса GUI. […]

Cocos2d-x — Обработка действий

От автора перевода Как вы уже поняли, эта статья — простой перевод официальной документации к движку Cocos2d-x. Если вы здесь впервые, можете глянуть предыдущую статью! ВНИМАНИЕ: Самое сложное при переводе технических документаций — это не сам перевод, а адаптация текста для русскоязычных читателей.

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

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

Классический 2д квест или как прошли наши два года разработки. Часть 1

В этом не очень большом посте я расскажу тебе о том, как мы делали свой, как нам казалось, небольшой проектик, и что у нас из этого получилось. Внимание! Под катом есть картинки и видосики, осторожно, траффик! Для начала маленькое отступление: данная статья не претендует на истину в последней инстанции, но в ней я постараюсь поделиться […]

Приглашаем на mini ai cups

Вот уже семь лет мы проводим russian ai cup, крупнейший в СНГ ежегодный чемпионат по искусственному интеллекту (а если проще — по написанию ботов для игр). И вот уже семь лет участники этого чемпионата просят либо оставлять песочницу работать весь год, либо запустить площадку, где можно было бы весь год играться в подобные же конкурсы, […]

Как (и зачем) мы портировали Shenzhen Solitaire под MS-DOS

Кейт Холман и Зак Барт — разработчики из игровой студии Zachtronics. Если вы любите запутанные технические статьи о создании игр для 25-летних компьютеров, возможно, вам понравятся наши игры-головоломки: SpaceChem, Infinifactory, TIS-100 и SHENZHEN I/O! Приступаем Смогут ли два программиста, привыкшие к созданию игр для современных компьютеров с гигабайтами ОЗУ и полноцветными HD-дисплеями, портировать свои игры […]

Логическая игра с нуля на ASP.NET Core 2, поиграем?

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

Ад рендера v.2.0. Книга первая. Обзор

Отсебятина Наткнулся год назад на ряд очень интересных статьей господина Simon Schreibt. Саймон очень любит разбирать то, как создаются игры, а именно графические решения того или иного элемента в игре.

О том, как довести первый проект до конца

Приветствую всех читателей данной статьи! Около двух лет назад я впервые открыл Unity и осмотрел просторы этого движка. И показался мне он чем-то невероятно сложным и запутанным. И вот я, обладая лишь начальными знаниями по программированию на C, решил сделать полноценную игру своей мечты, поскольку был наслышан о низком пороге вхождения. Но теперь я могу […]

Optimization Unity3d UI by GPU (for example minimap) или создаем миникарту без дополнительных камер и спрайтов

Всем привет. «Если можешь что-то посчитать на GPU, делай это» // Конечно в рамках разумного VS Обращаем внимание на разницу в фпс. Начну пожалуй с предыстории. Один из наших программистов, решил проверить UI на предмет падения фпс.

Как создавались пушки для Doom

Художник по оружию Грегор Копка рассказал о своём опыте создания трёхмерного оружия для видеоигр и о том, как перспектива и расположение камеры влияют на этот процесс. Введение Меня зовут Грегор Копка, в разработку 3D-игр я попал в конце девяностых.

Как мы оптимизировали Ragdoll анимацию смерти в Unity

Или как легко превратить Ragdoll в AnimationClip. Всем привет, мы маленькая инди-студия Drunken Monday. На днях выпустили игру, где нужно бегать по арене и крутить вокруг себя здоровенным топором, стараясь попасть по другим игрокам.

Первая игра на LibGDX. С какими проблемами сталкивается новичок и как их решить

Первая игра на LibGDX. С какими проблемами сталкивается новичок и как их решить Привет, хотел бы поделиться своим скромным опытом разработки первой (первая, которую выпустил в Google Play) игры на фреймворке LibGDX, отметить, что в нем понравилось, что нет.

learnopengl. Урок 2.2 — Основы освещения

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

Лучшее

Актуальное