хочу податься в написание игрух 3D
1 с чего начинать с какой книжки в виде уроков прочитав которую от корки до корки можно будит чтото начинать воять?
2 нужно ли изучать ассемблер?
3 хотелось бы не просто пользоваться чужими инструментами но спокойно и свободно создовать свои ?
где можно качнать книгу
"Секреты программирования игр для Windows" Андрэ Ла Мот
и стоит ли её читать вообще
В этом тебе поможет ООП в С++ Роберта Лафоре
так же, Бьёрн Страуступ, лучшая на мой взгляд книга по С++.
По мере прочтения этих книг многие вопросы у тебя отпадут сами собой.
Насчёт Ассемблера фиг его знает, мне кажется он тебе не понадобиться.
Начни с С++ дальше сам поймёшь что тебе надо изучить :) Дерзай, ведь самое главное желание!!!
"Секреты программирования игр для Windows" - отличная книга по двумерной графике. Много чего описано - математика, физика, искуственный интелект... Но в этой книге он создает свой движок!
Это сложно но очень полезно. Книга для начинающих.
Еще есть его книга "Секреты программирования трехмерных игр для Windows" тоже советую прочитать. После этого можешь переходить на книгу Джима Адамса "Продвинутая анимация". Это уже посерьезней.
2. Ассемблер знать не нужно, но желательно. Просто некоторые части кода можно писать на нем для ускорения работы (но эт совсем не обязательно).
3. После книг Андрэ Ла Мота это получится, но написания трехмерных игр это сложная задача. И редкие маньяки пишут игры в одиночку
Еще есть книга "Программирование графика GDI+ и DirectX 9". Авторы Алексей Поляков и Виталий Брусенцев. Книга для СОВСЕМ начинающих. В ней довольно подробно описана вся 3-х мерная математика. Если плохо знаешь с++, то изучить GDI+ перед изучением Direct'а было бы очень полезно.
Если хочешь более мощное средство, почитай про Open Scene Graph (OSG), про него документации на русском языке я не встречал, только английскую, но зато тут ты сможешь создавать чудеса(если разберешься конечно как). А если нужно что-нить не супер реалистичное, то OpenGL к твоим услугам (Quake3 Arena написан на OpenGL)
Бегом на
Далее: менеджмент памяти, обработка звука, изучение расширений (если выберешь OpenGL), шейдеры, опять же WinAPI. Дополнительно: линейная алгебра (работа с матрицами) - от этого не уйдешь, кватернионы, векторная геометрия. Конечно, ты будешь использовать сторонние библиотеки, но знать, что и как делается - обязательно. И т.д., и т.д., и т.д...
Это, конечно, не лучший вариант, но если я тебе скажу, что изучать <это дело> надо еще со школьного курса геометрии, алгебры и физики, то скорее всего, руки-то у тебя опустяться.
Но, на самом деле, это очень интересная тема. Вперед!!!
Помоему для новичка будет очень сложно разбираться в чужом движке. Намного проще изучить основы той же вышки, отрисовки и т.д. по книжкам или статьям, а потом уже браться за исходники. Новичок просто потеряется в этой куче файлов.