Что почитать про программирование 3D графики?

Заинтересовался этой темой недавно. Подскажите какие-нибудь книги или ресурсы для изучения. Желательно, чтобы с самых основ 3Д.
Понимаю, что тема довольно сложная, но всё-таки хочется разобраться.
  • Вопрос задан
  • 8505 просмотров
Решения вопроса 4
Почитайте цикл статей на Хабре https://habrahabr.ru/post/248153/
Там все основы алгоритмов рендеринга с нуля описываются.
Ответ написан
@Joysi75
Если с точки зрения программирования + математики + базовые алгоритмы (Гуро, Брезенхем, Фонг ...) то до сих пор актуальна Шикин Боресков компьютерная графика (pdf варианты в гугле легко ищутся). Если дружите с C++ - то вообще все шоколадно с этой книгой будет.
А как там подан рейтресинг... Всевозможные источники света, разные модели отражения-преломления, процедурные текстуры, имитация модели камеры с фокусом, метод излучательности.

Я вспоминаю студенческие годы, когда запивая аля французский длинный багет колой часть кода переводил на ASM + моделировал текстуры + карты сортов деревьев :-) Помню, как меня заставляли насильно выключать комп на ночь (+я умолял чтобы электрика ночью не сбойнула) , в то время когда самописная прога на Watcom C++ считала покадрово вращение шаров из разных материалов над зеркальной плоскостью .

Да, четверть книги в данный момент неактуальна ( там где программирование ранних моделей видеокарт EGA/VGA/VESA ... + описание нового для тех времен пакета 3D Studio под DOS), Но оставшиеся 3/4 читаются на ура, формулы и описания весьма понятны, а C/C++ код краток, прозрачен и снабжен необходимыми комментариями.
Ответ написан
DanceM
@DanceM Куратор тега 3D
Кто хочет -ищет способ, кто не хочет -ищет причину
Мне очень помогло это в свое время:
http.developer.nvidia.com/CgTutorial/cg_tutorial_c...
Ответ написан
@syrov
пишу программы до 99 строк
Еще есть подход "что написать...". Так вот я бы еще предложил начасть с подобия smallpt. По окончанию написания такой программы на 100-200 строк вы будете знать основы векторной алгебры, тригонометрии и аналитической геометрии, теорию вероятности, расчет интегралов для построение математической модели освещения, что такое флакс, итд. Также ознакомитесь с OpenMP. Удачи.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@AlexSku
Программист по автоматике
Если про DirectX, то с самих основ неинтересно, т.к. версии меняются очень быстро. Из самых последних это 9 (и то, за какой-то месяц, сейчас не помню), 10, 11, 12.
Вы должны знать C++, COM-объекты (интерфейсы), язык шейдеров (раньше был ассемблер, теперь похож на C: HLSL, опять же, версии растут как грибы во время дождя), приложения DXUtil (почти все примеры даются на этой библиотеке, к тому же у неё версия тоже меняется).
Так что сначала определяйтесь с версией (от этого зависит версия Windows), а потом ищете книги. Кстати, как с английским? Т.к. большинство книг на английском.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
SPL
от 120 000 до 200 000 ₽
SPL
от 180 000 до 250 000 ₽
2Reallife Москва
от 220 000 ₽