Все потоки
Поиск
Написать публикацию
Обновить
273.8

Разработка игр *

Разработка игр

Сначала показывать
Порог рейтинга
Уровень сложности

Непрямое управление как ключевой элемент геймплея

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров6.9K

Всем привет! Я Денис, выпускник программы Менеджмент игровых проектов и основатель игровой инди-студии ISG.

Три года назад я приступил к разработке своего пет‑проекта — мобильной игры Transmigratio (лат. — переселение). Я хотел создать некую песочницу, в которой можно будет симулировать человеческую историю в духе Civilization, но без управления одним из народов. Хотелось сделать 4X, но без десятков тумблеров и переключателей — такое интерактивное шоу, в которое игрок может вмешиваться, а может и просто наблюдать. На обучении в Высшей школе бизнеса опытные геймдизайнеры справедливо заметили, что просто наблюдение будет скучным для большинства игроков, и показатели вовлечённости будут неприлично низкими. Поэтому я решил добавить ещё и активные игровые механики, чтобы улучшить перспективы проекта. Примерно в этот момент я начал понимать, что это будет не просто пет‑проект, а начало моей геймдев‑карьеры. Да, обучение во взрослом возрасте отлично помогает вправить мозги!

И что из этого получилось?

Разработка плагина RuStore Billing для Defold. Часть 1: Создание Defold-проекта

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров886

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

Интеграция RuStore Billing SDK в игры на движке Defold может быть немного сложнее, чем нативный вариант. SDK написан на Kotlin, и взаимодействие системы скриптинга Defold на Lua с нативным SDK требует использования JNI (Java Native Interface). 

Меня зовут Роман Пельмегов, я работаю разработчиком в RuStore.

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

Читать далее

Игрострой. Программирование. Оптимизация как камень преткновения

Уровень сложностиСредний
Время на прочтение20 мин
Количество просмотров2.4K

Всем привет! Для тех кто не знает, меня зовут Ш. Сергей!

Я хоть и программирую на Pascal/Assembler, но думаю что для людей, использующих другие ЯП, данная информация может быть полезна. Полностью рассмотреть вопросы оптимизации программ/игр практически не возможно, думаю для этого надо написать достаточно не малую книгу и всё равно что-нибудь да будет упущено.

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

ознакомится

Внутреннее устройство Blueprint функций в Unreal Engine 5

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров4K

Привет!

В этой статье я попытаюсь в подробностях объяснить, как именно работают Blueprint функции с точки зрения C++ кода. Разберем разницу в C++ реализации между Blueprint функциями и C++ функциями, а также будет разобран пример одной из "Blueprint схем".

Читать далее

Letter-Setter. Записки одной разработки. Часть 1

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров408

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

Это может быть что-то “уютное, ламповое”. Или “образовательное, развивающее”. Ну или банальное “на чем бы заработать”. Но, наверное, чаще всего это смесь всего по чуть-чуть. Конечно же, тяжело просто взять и начать. Ведь вне зависимости от того, как сильна твоя решимость, как давно ты занимаешься разработкой и имеешь ли опыт создания интересных и не очень проектов, всегда будут крутиться вопросы, которые заставляют сомневаться.

Letter-Setter в Steam

Читать далее

Как я создавал онлайн игру «нарды» (часть четвертая). Сервер

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров1.4K

Всем привет!

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

Читать далее

О трёхмерной графике в GMS2. Часть 1 из 2

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.3K

Что такое вершинный буфер? Как создать трехмерный объект и отрисовать его на экран? Для чего нужен формат вершин и как с ним работает вертексный шейдер? Как работает буфер глубины и что такое борьба за глубину? Как это влияет на полупрозрачность и почему важен порядок отрисовки объектов на экран? Как посчитать координаты камеры и задать перспективу? Для чего нужны матрицы и как ими пользоваться? Что такое отсечение и зачем оно нужно?

Читать далее

YRGB 2024 — конкурс по созданию игр для ZX Spectrum

Время на прочтение6 мин
Количество просмотров6.5K

Жизнь отечественных геймеров в конце 80-х — начале 90-х годов была очень непростой. Из советских электронных развлечений были разве что клоны Pong вроде «Видеоспорта», карманные электронные игры типа «Ну, погоди!» (тоже клоны, но уже серии Game & Watch от Nintendo), несколько десятков советских компьютеров с довольно ограниченным набором софта да несколько сотен (!) клонов британского компьютера ZX Spectrum.

И сегодня я хочу рассказать вам о YRGB — международном конкурсе по разработке ретро‑игр, который Яндекс проводит с 2019 года. Участникам необходимо разработать самостоятельную игру, свободную от авторских прав, для платформ ZX Spectrum 48K/128K. Так что если вы когда‑нибудь делали игры или хотите попробовать, но опасаетесь масштаба современных платформ, этот пост для вас.

> START

Недельный геймдев: #189 — 1 сентября, 2024

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2K

Из новостей: GameNGen сгенерировал Doom, Bloodborne запустили на ПК, Remedy и Annapurna объявили о сотрудничестве для работы над Control 2, новые возможности для показа контента на странице в Steam.

Из интересностей: история одной опечатки в Street Fighter II The World Warrier, 100 полезных советов по Unreal Engine 5, Motion Capture кошачьих врагов для Black Myth: Wukong.

Читать далее

Современное хранение игрового прогресса в контексте Unity

Уровень сложностиСредний
Время на прочтение30 мин
Количество просмотров15K

Для чего нужна система сохранений? Какие задачи решает? Что происходят внутри? Как реализовать? Какие варианты существуют? Как адаптироваться к постоянно меняющемуся контексту? Какие современные особенности нужно учитывать?

Читать далее

3D рендер с редактором карт в Консоли (Часть 2)

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров3.1K

Сегодня я собираюсь продолжить рассказ про свой 3D рендер в командной строке Windows и разобрать те темы, которых не коснулся в 1 Части.

На этот раз в статье будет больше кода и меньше математики (а также много скриншотов).

Читать далее

Игрострой. С чего начинать

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров5.9K

Привет всем! Меня зовут Ш. Сергей!

Я очень не хотел создавать подобные темы. И уже есть темы которые я уже создавал и там многое уже написано. А так же есть множество подобных тем, где люди написали больше меня и вероятно для кого-то более полезно чем я. Это и не удивительно, ведь я программист на Pascal/Assembler, от которых сейчас многие открещиваются как только могут.

В этой статье я постараюсь затронуть тему для всех ЯП и в своём большинстве для начинающих программистов. Так как именно они зачастую будут стоять перед выбором: "с чего же начинать?"

ознакомиться

О шейдерах в Game Maker Studio 2

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров1.3K

Как работают шейдеры в GMS2? Как их писать и использовать? Что означают термины attributevarying и uniform? Какой тип шейдера выбрать? Почему шейдер всегда состоит из двух файлов? Чем отличается вершинный шейдер от фрагментного? И причём здесь треугольники?

Читать далее

Ближайшие события

Устройство системы чит-кодов в The Simpsons: Hit & Run

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров1.1K

Приветствую всех мододелов и интересующихся!

Сегодня я хочу обсудить внутреннее устройство системы чит-кодов в The Simpsons: Hit & Run 2003.

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

Читать далее

Всероссийский конкурс «Начни игру»: денежные призы, обучение и нетворкинг

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров1.5K

Сейчас идет третий сезон Всероссийского конкурса «Начни игру». Это бесплатный для участия проект, уже третий год подряд дающий людям социальный лифт в сфере игровой индустрии и позволяющий обучиться одной из геймдев-профессий или делать собственные игры. В этом году основной упор делается на трек «Создатель игр», где в формате геймифицированных заданий вы проходите путь создания игры от идеи до релиза. Участвуйте и подавайте свой игровой проект на оценку экспертам до 14 октября! Участие в проекте позволит развить компетенции в сфере создания игр, включиться в сообщество единомышленников, выпустить демо‑версию своей игры игры и в случае победы даже получить денежный приз. Общий призовой фонд для победителей четырех основных номинаций — 1,6 млн рублей.

Читать далее

Гарри Поттер и имя типа в компайлтайм

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров3.3K

Пару лет назад я написал статью про получение имен элементов enum в моих любимых плюсах без использования typeid, макросов и черной магии, а то и вообще в компайлтайм. Хотя нет, немного магии там все же было. Это был интересный опыт, но особого применения в проде я так и не нашел, хотя коллеги начали активно использовать эту возможность чтобы итерироваться по enum в поисках нужного элемента по его строковому представлению. Оно конечно задумывалось наоборот, но как говорится, пасту в тюбик обратно не запихнешь, пользуются и то радость. И тут в домашнем игровом движке мне понадобился похожий функционал получения имени структуры или класса в компайлтайм, можно конечно было сделать через typeid, но в релизной сборке rtti планируется отключать, так что этот вариант не подходит. А конвертировать имя структуры в строку все же хочется. При чем тут Гарри и для чего это все нужно в конце статьи.

Wingardium Leviofa

Система управления памятью в The Simpsons: Hit & Run 2003

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров2.8K

Привет!

Сегодня я хотел бы обсудить систему управления памятью в игре The Simpsons: Hit & Run 2003. Статья будет состоять из двух частей, в первой из которых будет обсуждаться само использование такой системы управления памятью, а во второй будет рассказано о внутреннем устройстве этой системы.

Читать далее

Головоломка со светом

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров4.9K

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

Читать далее

3D рендер с редактором карт в Консоли (Часть 1)

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров6.9K

Привет!

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

Читать далее

Blockout в разработке игр: Зачем тестировать уровень до добавления деталей

Время на прочтение5 мин
Количество просмотров1.3K

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

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

Читать далее

Вклад авторов