Форум программистов, компьютерный форум, киберфорум
Наши страницы
Крюгер
Войти
Регистрация
Восстановить пароль
Оценить эту запись

Приоткроем дверь в game-development (3)

Запись от Крюгер размещена 26.10.2017 в 15:48
Метки gamedev, games

Сценарий(Черновик 24.10.17)
По поводу сценария хочу сказать следующее: Во-первых есть основная мысль, есть базовый сюжет. Во-вторых, время от времени я его дополняю. Кроме того, в игре фигурирует СССР и отдельные его части. С одной стороны, отношение к нему в России и в мире не однозначное, с другой стороны, поливать его дерьмом не собираюсь. Это просто игра, и никакой политики здесь нет. Я бы даже сказал, это фантазия на тему "А что если?". Кроме того, эпоха СССР дает богатый сеттинг, и вообще, есть пространство для полета фантазии. Более того, сюжет - это гремучая смесь СССР+Наше время, а это еще более богатый сеттинг, еще более интересный игровой мир, и еще больше пространства для фантазии.

Прибыль(Черновик 24.10.17)
Здесь я скажу так. Сейчас её нет. Но что мешает вам участвовать в проекте, в качестве хобби, если вам это понравилось?
Для меня это тоже хобби, и проект нацелен в первую очередь сделать качественный продукт, а всё остальное - следствие выполнения цели. Вообще, есть хорошая пословица на эту тему: "глупо делить шкуру не убитого медведя".

Диздок(Черновик 24.10.17)
Очень многих людей волнует наличие "диздока" , есть ли он у этого проекта? Стоит ли начинать со мной работу?
Открою страшное диздока нет. Есть его зачатки - Сценарий+концепт-документ, в нем я пишу сценарий и в него же пишу все идеи которые посещают. В диздок попадет самое реальное в плане реализации и самое интересное в плане игры.
Так что, повторюсь - если вы желаете попробовать себя в разработке игр, буду вам рад, пишите на почту.

Кликните здесь для просмотра всего текста
Сеттинг (игры)
Се́ттинг в художественных произведениях (книгах, фильмах, настольных и компьютерных играх) — описание мира, в котором происходит действие произведения, по определённому шаблону. Сеттинг может быть как реальным (например, Великая Отечественная война), так и вымышленным (например, Средиземье Дж. Р. Р. Толкина). Вымышленный сеттинг может включать космологию, географию, историю, художественный стиль и т. п.

По поводу публикации всех наработок: этого не будет, потому как все эти наработки кто нибудь присвоит себе, и мало того, присвоит авторское право, и тогда я не смогу выпустить собственную игру. Приближенное описание игры я выкладывал, более конкретно могу ответить по почте.
Будет: После выхода игры, для большей её популяризации будет возможность моддинга - в виде аддонов к игре, добавляющих или меняющих оружие/диалоги/локации и прочее. Исходный код самого движка будет закрыт. Для удобства модмейкеров будет выложен необходимый набор инструментов.

Обратная связь(Черновик 25.10.17)
К моему удивлению, люди стали откликаться на моё предложение о совместной разработке, и это здорово! Конечно, размытость сюжета, местами неопределенность (в силу закрытости проекта), возможно в какой-то мере отпугивают людей, не знаю. Вообще - это мой первый опыт найти единомышленников для работы над проектом. Другие проекты не требовали вообще никаких дополнительных ресурсов, но с этим дело обстоит иначе.

Кто в данный момент нужен проекту?
- Программист. 1-2 человека.
  • Крайне желателен опыт проектирования сложных систем ПО,
    Знание языков Си/С++
    Умение работать с многопоточностью/многозадачностью желательно!
    Со всем остальным разберемся по ходу пьесы.

И самое главное, вы не должны относиться к категории людей: "Хочу написать свою крутую супер-пупер-мега ММОРПГ за 3 дня и без программирования".
С такими мне не по пути, здесь этого не будет. Слава богу, такие люди попадаются не часто.
Если у вас есть желание присоединиться, пишите на почту perec.number.one@gmail.com с пометкой gamedev.

План работ(Черновик 26.10.17)
И так, свел в таблицу приблизительный план работ:
НазваниеОписание
Подготовка сценария и концепции игрыОформить начальный концептуальный документ, описывающий сюжет, механику игры, и различные идеи, для подготовки концепт-документа.
Подготовительные работыВыбор и настройка инструментальных средств (среды разработки, системы контроля версий, системы автоматического тестирования и т.п.)
Проектирование архитектурыВыделение и установление отношений между основными элементами архитектуры игры - движков и их ключевых элементов
Уточнение геймдизайнаПроработка игровой документации вплоть до составления дизайн-документа
Создание пре-альфыПрограммная реализация базовых возможностей игрового процесса, практически без введения фич и с использованием "заглушек" вместо большей части игрового контента
Создание альфа-версииРеализация всех главных фич игры, без детальной проработки, создание функционального игрового редактора
Сбор командыПоиск художника и звукорежиссера для создания игрового контента
Создание бета-версииРеализация всех игровых возможностей, разработка полнофункционального игрового редактора, наполнение оригинальным контентом, полномасштабное публичное тестирование
РелизВыпуск законченной версии игры, переход на этап сопровождения и технической поддержки
Спасибо участнику форума с ником Гром за его цикл статей, где я нашел много полезного.

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

В целом по движку: аналитика входных данных(Черновик 26.10.17)
В общем, решил проанализировать все входные данные, четко понять весь объем данных используемый современными игровыми движками, я уверен это поможет в дальнейшей разработке. Чем четче поставлена задача - тем корректнее будет результат.
В результате анализа данных, пришел к выводу что больше всего неопределенности в геометрических данных. Почему так? Не знаю, но всё то обилие 3д форматов, как я уже писал в блоге - не удовлетворяют моим требованиям.
Между тем, требования у меня к формату простые:
  • Нужны данные 3д модели
  • Нужны данные костей модели
  • Нужны данные коллайдеров для физического моделирования
  • Возможность связывания модели например с источником звука или света
  • и т.д.
  • Никаких метаданных касающихся 3д редактора быть не должно.
В общем, я решил что для моих требований частично подходят форматы 3DS и smd. Кроме того, я считаю что для более реалистичного отображения анимации требуется комбинация методов "скелетной" и "морфинговой" анимации. То есть изначальные положения к примеру руки/ноги задается скелетом, а её форма корректируется по замыслу художника в соответствии с реальным телом. Так же лицевая анимация требует комбинации этих методов, и на мой взгляд даст отличный результат.
Формат для хранения анимации я вижу следующим образом:
- файл содержит секции action, каждая из которых соответствует одному действию.
- каждое действие разделено на n кадров, по аналогии с форматом smd, и содержит положение
костей 3д модели/либо только её части, а так же, данные для морфинга - это определится на этапе тестирования, и
отсеется по критерию быстродействия.

Формат хранения данных уровня пока затрудняюсь описать в полном виде, но выделяю следующее:
- Геометрия уровня
- Текстуры уровня
- Данные различных источников (свет, звук)
- Логическая сетка для НПС
- Узлы путей для НПС
- Кривые (для путей перемещения свободной камеры)
- Геометрия для "триггеров"
- "Порталы видимости" - для отсечения лишних объектов , и тд.
... Будет дополнено...

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

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

Текстуры во всех серьезных играх хранятся в формате dds (имхо, следующее из опыта копания в ресурсах разных игр) - здесь в принципе ничего нового, документация к этому формату есть на msdn, и комментировать что либо излишне.

Звук здесь я буду использовать формат .ogg в силу его свободной лицензии и хорошего качества.

Для хранения диалогов, веток улучшений и прочих данных имеющих ветвления, предполагаю подойдет формат xml

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

На этом пока всё. Заморожу блог на эту тему, на некоторое время, для того чтобы найдя единомышленников мы подошли к начальному результату. Процесс я так же буду описывать в таких же записках, но выкладывать буду реже (Суть заморозки). Пока будет сохранено в черновики. Всем спасибо за внимание, надеюсь интерес к проекту вас не покинет!
Размещено в Игрострой|GameDev
Просмотров 314 Комментарии 0
Всего комментариев 0
Комментарии
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru