Рубрика «Gamedev» - 20

Telegram-каналов, да ещё про геймдев, не то чтобы много. Тем не менее, это хороший инструмент для привлечения партнёров и клиентов. Иногда даже работников. Делимся личным опытом, с какими сложностями можно столкнуться и какие итоги получили.

Исходные данные

Мы – небольшая студия из Нижнего Новгорода, разрабатываем игры уже почти 10 лет. В прошлом году решили завести канал – тогда их было ещё меньше. Сначала мы просто хотели делиться тем, что делаем, а заодно повысить узнаваемость компании на конференциях. Логика простая: читаешь канал, знаешь, кто его авторы – подспудно появляется доверие к этим ребятам. Сказано – сделано, назвали канал «Будни геймдева» (@devmygame). На момент создания в канале было около 20 человек.

Читать полностью »

Окружи, откуси, распили: новое соревнование Mini AI Cup #4 - 1

Привет! Большинство из нас, специалистов в IT сфере, любит играть в игры — карточные, настольные, компьютерные и другие. Зачастую бывает, что игры пользы никакой не приносят, а хотелось бы всё и сразу — удовольствие, фан и знания. Специально для вас мы стараемся изобретать «игры для программистов», которые сочетают в себе всё вышеперечисленное. Предлагаем вам познакомиться с ними и приглашаем принять участие в соревновании по искусственному интеллекту Mini AI Cup #4!
Читать полностью »

Что (не)нужно знать для создания игр на Unity - 1

Unity — игровой движок, с далеко не нулевым порогом вхождения (сравнивая с тем же Game Maker Studio), и в этой статье я расскажу с какими проблемами столкнулся начиная его изучение, и какие решения этих проблем нашел. Я буду описывать подобные моменты на примере своей 2d игры-головоломки для Android (которая, надеюсь, скоро выйдет в Play Market).Читать полностью »

Всем привет.
В этот раз мне хотелось бы затронуть тему разработки компьютерных игр, показать некоторые идеи и прототипы. Конкретно в этой статье речь пойдёт о проектах и набросках, вдохновлённых игрой Вангеры, она же Vangers: One For The Road.
Пристёгивайтесь поудобнее, трюм полон интересностей, спираль заряжена, поехали.

Невангеры - 1

Читать полностью »

Всем привет! Это мой второй урок по SDL 2. Информацию я всё ещё беру отсюда.
Итак, приветствую вас на уроке

Main не резиновый

На прошлом уроке я всё красиво расположил в функции Main(), но для больших программ это не есть хорошо. Именно по-этому появилась возможность писать функции. Сейчас мы ею и воспользуемся.

Начнем написание кода с подключения SDL и объявления нескольких глобальных переменных.
Читать полностью »

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

Размышляя с чего начать вообще этот RTS движок, я пришел к выводу, что стоит начать с конкретики и от нее перейти к абстракции. Первой прикладной задачей, пришедшей на ум, был сбор ресурсов, а точнее, добыча дерева.
Читать полностью »

Всем привет! Решил, вот, посмотреть на SDL 2, но на русском ничего толкового не нашел. Решил написать свое, питаясь вдохновением отсюда.

Установку SDL 2 я пропущу, а начну сразу с написания программ, итак:

Ваше первое окно


начнем с подключения SDL 2.

#include <SDL2/SDL.h>

Здесь же объявим несколько глобальных переменных.

const int SCREEN_WIDTH = 640;
const int SCREEN_HEIGHT = 480;

Далее открываем всем знакомую функцию main.

int main (int argc, char ** args) {
    
    if( SDL_Init( SDL_INIT_EVERYTHING ) != 0 )
    {
        return 1;
    }

    SDL_Surface* screen_surface = NULL;

    SDL_Window* window = NULL;

Давайте немного разберем код. В main из командной строки принимаются параметры командной строки, их нужно обязательно принять. Далее мы инициализируем SDL 2 функцией SDL_Init(). Мы передали в нее SDL_INIT_EVERITHING, что означает, что мы инициализируем все модули SDL (видео, аудио и т. д.). Есть еще несколько флагов для SDL_Init:

Flags

SDL_INIT_TIMER — подключение таймера;
SDL_INIT_AUDIO — подключение аудио;
SDL_INIT_VIDEO — подключение видео, автоматически подключаются события;
SDL_INIT_JOYSTICK — подключение управления джойстиком;
SDL_INIT_HAPTIC — тактильная подсистема (не знаю что это, если честно);
SDL_INIT_GAMECONTROLER — подключает управление, автоматически подключается джойстик;
SDL_INIT_EVENTS — подключает обработку событий;
SDL_INIT_EVERYTHING — подключает всё, выше перечисленное;
SDL_INIT_NOPARACHUTE — проверка на совместимость.

Читать полностью »

Make it True — Разработка логической игры на Unity - 1

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

Статья не являются руководством или уроком, хотя надеюсь что читатели смогут вынести что то полезное из нее. Рассчитано на разработчиков знакомых с Unity имеющих некоторый опыт в программировании.
Читать полностью »

В этой статье я тезисно перечислю наиболее интересные для меня выводы и чеклисты, которые я нашёл в книге Рафа Костера «Theory of Fun for Game Design».

Что интересного я извлёк из книги «Theory of Fun for Game Design» от Рафа Костера - 1

Читать полностью »

Релиз часто подкрадывается незаметно. И любая ошибка, внезапно обнаруженная перед ним, грозит нам сдвигом сроков, хотфиксами, работой до утра и потраченными нервами. Когда подобный аврал стал происходить систематически, мы поняли, что так больше жить нельзя. Было решено разработать систему всесторонней валидации, чтобы спасти рядового Райана разработчика Артёма, который перед релизом уходил домой в 9 вечера, или в 10, или в 11… ну вы поняли. Идея была в том, чтобы разработчик узнавал об ошибке, пока изменения еще не попали в репозиторий, а он сам не потерял контекста задачи.

Статическое тестирование или спасти рядового Райана - 1


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


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js