Как стать автором
Обновить
23.9

Godot *

Открытый кроссплатформенный 2D/3D-движок для игр

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

Процедурная генерация миров с использованием AI: интеграция MidJourney и GauGAN2 в геймдев

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

Создание сотен локаций вручную непрактично для инди-разработчиков, а алгоритмы шума о которых я писал ранее ограничены. Искусственный интеллект, такой как MidJourney и NVIDIA GauGAN2 (интегрирована в NVIDIA Canvas, бесплатно доступный для пользователей с видеокартами NVIDIA RTX), предлагает новые возможности: нейросети генерируют текстуры, биомы и концепт-арт с высокой детализацией.

Читать далее

Новости

Свой проект — это ловушка для новичка

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

Когда мне было 16, я устроился работать в небольшую студию. Это была по факту официальная работа: с реальными задачами, пайплайном, дедлайнами и даже большим издателем. Тогда это казалось чем-то невероятным. Игра, над которой мы работали, выглядела амбициозно. У неё были красивые промо, целевая аудитория, маркетинг — всё как у взрослых.

А в центре команды был парень, старший разработчик, которому на тот момент было 23. Для меня он был почти как герой: я только начинал, а он уже 7 лет программировал. Уверенный, спокойный, очень самостоятельный. Я всерьёз думал, что именно к этому и стоит стремиться.

Но потом к нам присоединились более опытные ребята. Разработчики, у которых за плечами были и запущенные проекты, и провальные — но главное — была реальная практика и мышление архитектора. Они сразу начали задавать вопросы: — Почему у нас 6000 строк в одном скрипте? — Почему нет нормального разделения логики? — Почему переменные называются a, b1, mainLogic, veryImportantManager?

Код, который мы считали рабочим, оказался большой горой хрупкого говнокода, которая могла рухнуть от любого изменения. И когда она рушилась — её латали так же вслепую. Без юнит-тестов, без понимания, почему оно работает. Главное, чтобы запускалось.

🧨 А потом проект провалился. Несмотря на издателя

Читать далее

MyCivGame. Как я сделал свою Civilization?

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

MyCivGame - Как я сделал свою Civilization! Я расскажу, как я в одиночку делаю свою пошаговую стратегию, вдохновленную играми Civilization и Total War...

Читать далее

Шестидесятилетний заключённый и лабораторная крыса. F# на Godot. Часть 7. Как удержать нечто

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

В прошлой главе мы перенесли A* на F#, после чего в образовательных целях занялись выдёргиванием его «кишок» наружу. Тогда процесс «потрошения» не был завершён до конца, но сегодня мы его добьём. Что касается метагейма, то мы продолжим путь от функции к конструктору и даже успеем слегка залезть на «ту сторону».

Читать далее

Шестидесятилетний заключённый и лабораторная крыса. F# на Godot. Часть 6. Как добыть нечто

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

Концепция этого цикла начиналась с простого переноса тайловых миров на F#. Однако в процессе его описания я основательно растёкся по древу, за счёт чего у нас образовался большой подготовительный этап из пяти глав про языковые фичи и прочую «фундаменталочку». Думаю, что с подготовкой закончено, поэтому сегодня мы обратимся непосредственно к тайловым мирам.

Но начнём мы практически с конца — с адаптации поиска пути. Это несложная задачка, но в процессе её решения мы успеем закрепить пройденный материал и по инерции заскочить в новый.

Читать далее

Никому не советую, но мы попробовали, или Интеграция игры в React Native с помощью Unity, Game Engine и Godot

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

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

Читать далее

Шестидесятилетний заключённый и лабораторная крыса. F# на Godot. Часть 5. Ошибки и исключения

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

Мы закончили обсуждать тело функции, и теперь пришло время вывода данных. Простые сценарии мы сразу отбросим, так как по ним уже хорошо прошлись, когда изучали выражения. Мы начнём с косяков выполнения, под которыми я подразумеваю не баги, а непреодолимые препятствия с различной степенью неожиданности. Это может прозвучать странно, так как аварийный выход не подпадает под определения output, codomain и т. д. Я с этим согласен и пересматривать эти термины не собираюсь. Однако меня интересует не только легитимная часть, но и вообще всё, что выходит из функции. Вплоть до того, что в следующих главах я начну включать в это аморфное понятие сайд-эффекты, фоновые процессы и много чего другого.

Я начал с ошибок, потому что Godot эту тему фактически проигнорировал, и вряд ли за ненадобностью, так как несколько раз мне уже было очень больно. У меня всё ещё не дошли руки покопаться в GDScript, так что я понятия не имею, вызван ли этот пробел ограничениями языка или архитектурным решением, но в любом случае нам его надо закрывать.

C# и ФП пропагандируют разные подходы к ошибкам. F#, будучи на перепутье, испытывает влияние обоих. Можно много говорить про плюсы взаимного обогащения культур, но судя по публичным баталиям, это не совсем наш случай. Вместо синтеза я куда чаще наблюдаю эмоциональные взрывы в среде представителей то одного, то другого лагеря. Я не буду ввязываться в эту борьбу (в этот раз) и сосредоточусь на решении более насущной задачи. Мне нужно доработать интероп так, чтобы он соблюдал привычную систему распределения ответственности. Так что сегодня только рутина, без красивых ходов и эффектных бросков.

Читать далее

Шестидесятилетний заключённый и лабораторная крыса. F# на Godot. Часть 4. Дефолты, option и дженерики

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

В прошлых частях мы подключились к Godot, обсудили адаптацию к API и разобрались с устройством тела функции. Дальше в планах было перейти к входным и выходным данным, от них к общей архитектуре и далее снова к особенностям API. Если бы я отстрелялся быстрее, то так бы и было, но я возился слишком долго (об этом чуть ниже), из-за чего до моей телеги успел доползти читатель с типовым набором набивших оскомину вопросов. Допускаю, что я собрал всю коллекцию практикующих читателей, но мне хочется верить, что где-то прячется «молчаливое большинство» с аналогичными проблемами. Поэтому я решил передвинуть некоторые рассуждения из конца цикла в середину.

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

Читать далее

An incursion under C#. Протаскиваем F# в Godot. Исправления

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

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

Читать далее

Radius TactiX, тактика на Godot

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

Прототип походовой радиусной тактики на движке Godot 3x, продвинувшийся от концепта до улучшающейся демоверсии. Передвижение персонажей, как и применение способностей, происходит не по клеткам, а в пределах определённого радиуса. Герои могут менять профессии - на данный момент это Странник, Волшебник, Сказочник или Рыцарь.

Читать далее

Handpaint 3d-модели своими силами

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

Несколько game-ready low-poly моделей, которые делал вручную с применением разделённой покраски: цвет и монохром отдельно. Используется Blender, без каких-то дополнительных штук.

Читать далее

Инвентарь в Godot

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

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

Читать далее

Походовая тактика на PC: игра против AI или игровой стол?

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

Два разных проекта на движке Godot. Первым был Tesserfact — попытка перенести урезанную часть механик из настольно‑ролевой тактической игры в игру компьютерную. Но в процессе, в силу принципиальной невозможности переноса всех аспектов, подумал переориентировать его в игровой стол (Монстробой: Тактика — второй проект), где игрок управляет всем мануально и может «эмулировать» любые, незакодированные, правила. Что из этого лучше — вопрос открытый, как и то, что обязательно ли компьютерные игры должны быть именно играми общераспространённого вида, где весь интерактив целиком автоматизирован.

Читать далее

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

Outsiders, аркадная космо-rpg на Godot 4

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

Прототип adventure-rpg в мире маленьких планет, где игрок управляет разумным звездолётиком, который посещает различные планетки.

Читать далее

da~Mage, демо arpg на Godot

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

Однажды было настроение собрать проект с управлением в стиле WoW, геймплеем куда-то в направлении Skyforge, экспериментальными игромеханиками и игрой за чистых magic user'ов - получился экшен-рогалик с заклинаниями от комбинаций. Также в этом деле оказалась замешана настольно-ролевая система "Неоновый миф" и её необычные герои.

Читать далее

Униванг 3/9, демо vangers-like игры на Godot

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

Что если вместо Невангеров делать аналог Вангеров, подумал я и сделал прототип торгово-гоночной игры на движке Godot. Собрав в нём некоторое комбо из различных наработок за все годы и заложив в игру классический вангерский процесс - развоз грузов. Естественно, с какими-то своими особенностями тоже.

Читать далее

Все Невангеры

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

О том как серия игровых прототипов по мотивам (и не по мотивам) небезызвестных сюрреалистических "гоночек" из 98-го пробовала различные концепции, механики и игровые движки.

Читать далее

Pandelirium, диаблоид на Godot

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

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

Читать далее

Алгоритм генерации волн врагов в рогалике

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

Привет! Недавно в ранний доступ в Steam вышла наша игра Clayers: Prologue. Это рогалик в глиняном стиле, где нужно подбирать и смешивать цвета, чтобы убивать врагов. В этой статье разберём наш подход к генерации волн с учётом сложности противников.

Читать далее

Сделать 10 игр на Godot. От Pong до Portal. И вот итог

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

Кратко расскажу о себе: имею около 10 лет опыта с GameMaker, выпустил пару игр в Steam. Делал пару-тройку конкурсных игр на Unity, один раз на Unreal Engine 4 (об этом детально рассказывал в статье на другом сайте). У меня нет цели попробовать абсолютно все движки, однако, взглянуть на те, что оказались на слуху — почему бы и нет? Таким движком оказался Godot. Много о нём слышал, решил попробовать в деле.

Имеется 20 games challenge, в названии которого указано 20 игр, но на деле челлендж на создание 10 игр с нарастающей сложностью. Никаких временных рамок в не было, поэтому я решил установить свой дедлайн: до конца 2024 года сделать все 10 игр, по одной игре в месяц.

Смог ли я справиться с этим? Каким образом?

Узнать что вышло и сколько игр сделал!