Форум » Вопросы о разработке игр » С чего начать написание простенького трехмерного игрового движка? » Ответить

С чего начать написание простенького трехмерного игрового движка?

Inferno: Вот я решил написать простенький трехмерный движок. Но незнаю с чего начать. Может кто-нибудь, что-нибудь посоветует. Для начала хотелось бы узнать какими характеристиками должен обладать движок. Какой минимум функциональности должен быть, что бы можна было на нём написать простенькую трехмерную игру. Какой должна быть первая трехмерная игра, и стоит ли писать игру? Может лутше с начала написать простенькую демку?

Ответов - 22, стр: 1 2 All

netlib: С проектной документации (техзадания). Inferno пишет: Для начала хотелось бы узнать какими характеристиками должен обладать движок. Вот про это как раз и пишут в техзадании. Определяет это разработчик. Inferno пишет: Какой должна быть первая трехмерная игра, Простой.

Inferno: Спасибо за ответ NetLib. Буду писать техзадание. Простой. В том то и дело, что я не могу придумать простую игру. Может посоветуешь что-нибудь? Чем проще тем лутше.

Mystic: Почему бы не начать с прыгающего шарика по ландшафту? Если сделаешь прогу расширяемой, сможешь постепенно усложнять (или не постепенно).


CasDevelep: "В начане был хаос"

CasDevelep: Дело это конечно трудоемкое. Если позволяют время и средства, то конечно можно спроектировать игру полностью. Начать с написания технического задания, как уже говорилось выше. Продолжить написанием дизайн-проекта. Определись, какое направление жанра ты будешь использовать в игре. Выбери программный инструментарий, которым ты будешь пользоваться при разработке и т.д. Большое внимание следует уделить этапу проектирования. Если на этом этапе потратишь уйму времени, то меньше времени потратишь на реализацию кода, и исправление дефектов, а они точно будут, ты уж мне поверь. Если все делать спонтанно по технологии "code and fix", то из этого вряд ли получится, что-то вразумительное.

CasDevelep: Для начала хотелось бы узнать какими характеристиками должен обладать движок. Какой минимум функциональности должен быть, что бы можна было на нём написать простенькую трехмерную игру. Я думаю, что это способен определить только разработчик, т.к. именно он должен держать у себя в голове полное представление о будущей игре от начала до конца, ну или на другом носителе информации. Думаю, что не стоит сильно углубляться в эти вопросы. Революционный движок, инструментарий которого позволял бы написание игры разного стилистического жанра, не только разработчиком, но и к примеру человеком не принимавшим участие в разработке тебе скорее всего не удастся. Какой должна быть первая трехмерная игра, и стоит ли писать игру? Писать игру конечно же стоит, хоть это и будет чистой воды энтузиазм, но пробовать конечно же стоит. Хотя бы для получения некоторого опыта, который будет у тебя за плечами.

CasDevelep: В том то и дело, что я не могу придумать простую игру. Может посоветуешь что-нибудь? Чем проще тем лутше. Если ты собираешься писать игру один, то лучше выбрать простенькую примитивную игру. Т.к. тебе одному придется выступать в таких ролях как разработчик, проектировщик, дизайнер, кодер, тестер и др. Я начинал с написанной на Pascale гоночной игрушки, объемом около 2000 строк. Потом "3D Шахматы" на DirectX объемом около 8000 строк. Сейчас тружусь над созданием 3D гоночной аркады, в качестве физического движка использую free ODE v0.7, графика - DirectX. В последних 2ух особое внимание трехмерному движку не уделял. Просто награждал движок тем функционалом, который бы позволял реализовать игру.

EViruS: Посмотри в сторону ирлихта. Он простой и удобный для простых игр и архитектура там простая. http://irrlicht.sourceforge.net На gamedev.ru есть соответствующее комьюнити.

Тёма: Народ игру писать собираюсь с друзъями энтузиастами, с чего начать, какой движок посоветуете взять?

Тёма: Для начала хотел взять бесплатный движок, 3ds max 9 и пошпарить, а потом и хочется своё написать, ответье нормально, а то не поделу фигню пишите, всё поэтапно разложите.Вам Inferno спросил как игру сделать а вы фигню ему ответели

netlib: Тёма пишет: ответье нормально, а то не поделу фигню пишите Вопрос внятно сформулируй, а то поток обкуренного сознания не дешифруется.

Inferno: Народ игру писать собираюсь с друзъями энтузиастами Вы уже выбрали жанр игры(РПГ,Экшен,Стратегия,Эротика)? с чего начать Для начала определиться с жанром игры, сделать сайт на котором можно будет выкладывать информацию об игре. Затем можна выбрать готовый движок, или постараться написать свой. Вообщем удачи.

stayer: Inferno пишет: Для начала определиться с жанром игры, сделать сайт на котором можно будет выкладывать информацию об игре. Затем можна выбрать готовый движок, или постараться написать свой. Вообщем удачи. Не согласен в корне. Сайт нафиг не нужен на первом этапе. Второе, на первом этапе так же не особо важен жанр, важен технический аспект, 3Д или 2Д, игровое поле и т.д. Под нужды начинает писаться ядро, рендер управление, частицы. Это конечно если делаешь свой движок. Если берешь готовое, тогда должно быть общее понимание игры. Ее описание, диздок, фичи, и все такое, от этого начинаешь плясать. Объясню почему для своего двигла на ранней стадии не важен жанр, с позиции программиста. Когда пишешь рендер, математику, управление, тебе пофиг кто там будет бегать - эльф или танк, это вторично, На первом этапе должно рисоваться хоть что-то и бегать это самое при нажатии кнопки.

Inferno: Не согласен в корне. Ну и зря. =) Сайт нафиг не нужен на первом этапе. Не согласен в корне. От куда люди смогут узнать о проекте? На сайте можна выкладывать информацию о проекте, также можна сделать форум на котором смогут общаться разработчики энтузиасты и их фанаты, да и вообще любой человек который заинтересуется проектом сможет получить любую информацию по проекту. На первом этапе должно рисоваться хоть что-то и бегать это самое при нажатии кнопки. я уже написал игру Pong. И там хоть что то рисуется и двигается при нажатии кнопки, но игра не пользуется популярностью. Может лучше написать что-нибудь простенькое, но интересное, чем рисовать что попало и затем двигать при помощи кнопки. :)

netlib: На сайт забить - еще один дохлый хомяк никому не нужен. Создавать сайт надо на той стадии, когда есть какие-то демки движка. Жанр важен - от него зависят технологии, размеры уровней, структура проекта и т.д. Так что диздок с концепцией хотя бы на 5 страниц обязателен. Затем сразу думаем о том, как будем управлять этим проектом и кто его будет делать. Если один человек - то выйдет максимум Арканоид, если несколько, то надо определиться с тем, кто что делает и как взаимодействовать (при этом реальных людей еще может не быть, но надо знать, что нам для проекта понадобится, например 3D-моделлер, которого у нас нет и которого надо искать). Потом пишем роадмап развития проекта, желательно с регулярным выкладыванием демо-версий (это привлекает других людей и помогает создать команду). Дальше начинаете работать. Не забывайте каждый день отмечать, что сделано - если в проекте месяц никаких изменений, потыкайте его палочкой - похоже он мертв. Если говорить, например, об игре Pacman. 1. Пишем концепцию и определяемся с технологией (выбираем DirectX под Windows). 2. Нам нужны программист и художник (если кого-то нет, начинаем искать). 3. Начинаем программировать. шаг 1. Инициализация DirectX - делаем инициализацию с вытаскиванием параметров из ini-файла. Проверяем на нескольких компьютерах. 4. Добавляем к инициализации отрисовку блока уровня в заданной позиции. 5. Реализуем рисование целого уровня. 6. Добавляем простейшее меню к началу игры. 7. Делаем редактор уровней (простейшую версию). 8. Делаем подхват сохраненных из редактора уровней. 9. Добавляем Пэкмана и реализуем управление им. 10. Добавляем объекты и контроль окончания игры. 11. Добавляем монстров и AI для них. 12. Рисуем нормальное меню.

stayer: Inferno пишет: Не согласен в корне. От куда люди смогут узнать о проекте? На сайте можна выкладывать информацию о проекте, также можна сделать форум на котором смогут общаться разработчики энтузиасты и их фанаты, да и вообще любой человек который заинтересуется проектом сможет получить любую информацию по проекту Не в обиду, опять же, но 2 твоих сайта я уже видел, где там что узнать не понял(да собсно и не особо...) Inferno пишет: я уже написал игру Pong Это не игра.Это даже не демонстрация возможностей. netlib пишет: Жанр важен - от него зависят технологии, размеры уровней, структура проекта и т.д. Для ядра, пофиг. Вот я пишу сейчас 3D двигло. На данном этапе мне необходимо добиться инициализации директ3д, отрисовку мешей, правильную работу камеры, выписать вектора и матрицы, выписать рендер, коллизии, частицы и много всего другого. Это общая часть, когда дело дойдет до конкретной игры то уже будут частности.

netlib: stayer пишет: Для ядра, пофиг. На достаточно низком уровне, конечно, пофиг. Но если для стратегии достаточно 2D и сосредоточиться на AI, то FPS требует уже моделей и трехмерной графики. А когда мы доходим до методов типа HeroesMoveHerAssToNorth, то здесь жанр вообще будет определять структуру классов.

CasDevelep: Брауде Э.Дж. - Технология разработки программного обеспечения

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

Inferno: Это не игра.Это даже не демонстрация возможностей. А что по вашему есть игра?



полная версия страницы