Здравствуйте. Давно вынашивал идею сделать игру - тренировался на крестиках-ноликах (OpenGL и C++), шашках (так и не доделал), простеньких играх на AS3 (типа "убей всех ползающих тараканов кликами мышки за определённое время, не раздолбав при этом дом"). Решил перейти в 3d. И столкнулся с проблемой, что по отдельности вроде бы каждая задача ясна и решается довольно понятно, либо успешно гуглится (шейдеры пока в расчёт не беру). Но вот с чего конкретно начать, как движок должен быть устроен - не совсем понятно. Не хотелось бы потратить туеву хучу времени, чтобы потом запутаться в собственном коде.
Собираюсь делать просто 3d-шутер. Нагуглил пример с камерой на квартерионах (http://pmg.org.ru/nehe/nehe_camera.htm), подредактировал управление для шутера. Подскажите, что делать дальше?
DeniS1
Общая структура игрового движка - это набор совместимых модулей и мейнфрейм, которых их объединяет.
Начинать делать "движок" от общего к частному - тупиковый вариант. Поэтому начать нужно с постановки конкретной задачи. Что ты хочешь? Научиться программировать, научиться архитектуре, научиться игровому дизайну или "просто" сделать 3d-шутер? Вот как с задачей определишься, я подскажу с чего начать :)
блин скакой переодичностью на форуме создаются такие темы?
у них даже названия одинаковые...
возьми сорсы Quake II и посмотри
DeniS1
Добавляй фичи постепенно, и понимание придёт само.
Например, загрузи модель мира, сделай чтобы персонаж по ней ходил. Потом прикрути здоровье, пушку, врага, и интеллект ему напиши.
cNoNim, спасибо за совет, уже качаю.
Went, хотелось бы научиться программировать графику, так как это, наверное, будет моей будущей профессией
Пытаюсь разобраться, где у него точка входа? Т.е. где функция main?
DeniS1
> Went, хотелось бы научиться программировать графику, так как это, наверное,
> будет моей будущей профессией
Тогда тебе нужна не структура движка, а лишь структура рисователя. В этом случае начинай с изучения графа сцены и всего, что с этим связано. Пример посмотри в Open SceneGraph.
DeniS1
в файле sys-win.c...
К.О. говорит что в студии надо нажать F10 и пошагово проследить выполнение программы
Так... 2008-я студия, нужная для OpenSceneGraph пока качается, а вот по Quake tсть ещё вопрос. Я, конечно, понимаю, телепатов здесь нет, но что за ошибка вылетает при по пытке сделать build? ref_soft.dll - 1 error(s), 0 warning(s)
DeniS1
> Я, конечно, понимаю, телепатов здесь нет,
> но что за ошибка вылетает при по пытке сделать build?
Это хорошо что понимаешь. Почему тогда не привел лог сборки?
DeniS1
в школе каникулы начались?
AndryBlack, да, уже скоро :)
[file=49218]
справа от каждой ошибки только я вижу ее описание? можешь на МСДН искать номер ошибки если так непонятно...
ashujon, это не ошибки, это предупреждения. А ошибка всего одна, в самом конце
quake2.exe - 0 error(s), 12 warning(s)
--------------------Configuration: ref_soft - Win32 Release--------------------
Performing Custom Build Step on .\r_varsa.asm
"ml" Ґ пў«пҐвбп ўгв॥© Ё«Ё ўҐиҐ©
Є®¬ ¤®©, ЁбЇ®«пҐ¬®© Їа®Ја ¬¬®© Ё«Ё Ї ЄҐвл¬ д ©«®¬.
Error executing c:\windows\system32\cmd.exe.
ref_soft.dll - 1 error(s), 0 warning(s)
--------------------Configuration: ref_soft - Win32 Debug--------------------
Performing Custom Build Step on .\r_varsa.asm
"ml" Ґ пў«пҐвбп ўгв॥© Ё«Ё ўҐиҐ©
Є®¬ ¤®©, ЁбЇ®«пҐ¬®© Їа®Ја ¬¬®© Ё«Ё Ї ЄҐвл¬ д ©«®¬.
Error executing c:\windows\system32\cmd.exe.
ref_soft.dll - 1 error(s), 0 warning(s)
Может, архив с движком был битый?
quake2.exe - 0 error(s), 12 warning(s) --------------------Configuration: ref_soft - Win32 Release-------------------- Performing Custom Build Step on .\r_varsa.asm "ml" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. Error executing c:\windows\system32\cmd.exe. ref_soft.dll - 1 error(s), 0 warning(s) --------------------Configuration: ref_soft - Win32 Debug-------------------- Performing Custom Build Step on .\r_varsa.asm "ml" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. Error executing c:\windows\system32\cmd.exe. ref_soft.dll - 1 error(s), 0 warning(s)
Может у кого-то компилятора асма нету...
Тема в архиве.