Аннотация
Андрей Аксенов, бывший игродел, сейчас известный своим движком полнотекстового поиска Sphinx и зажигательными выступлениями на конференциях, поделится своими мыслями на тему «Как прекратить писать» — в частности, слушатели узнают, как устроен идеальный код, чем оптимальный SQL-запрос отличается от оптимального 3D-полигона, и зачем программисту голова. Для любопытных, интересующихся разработкой игр, он также представит лекцию «3D-графика на трех пальцах», в которой кратко введет в курс устройства конвейера GPU, а также (еще короче) нескольких современных и не очень техник рендера.
Видео
Презентация
Примечания
- 3D-графика на трех пальцах (Андрей Аксенов на ADD-2010)
Рассказывал основы 3D-графики. В презентации в большом количестве присутствовали красивые картинки, но они были совершенно не видны на экране (вывод — для конференций красивую графику в презентуху вставлять бессмысленно). Начальный тезис — весь виртуальный мир состоит из треугольничков. Показывал рисование: задаем сцену, камеру, плоскость камеры, проецируем — получаем изображение. Треугольнички, из которых состоит 3D-модель маленькие, их много, долго обсчитывать. К нашей радости современные видеокарты это умеют делать эффективно. Если поверхность модели гладкая, это плохо, возникает ощущение, что нарисованный объект состоит из пластика. Для реалистичности картинки очень важна неровность поверхностей и освещение. Далее рассматривались алгоритмы освещения:
- ambient/fifuse/specular
- непрямое (отраженное) освещение — в реальном времени считать невозможно
- карта освещения — предварительный обсчет
- PRT — метод динамического освещения
В конце большой пошаговый пример создания реалистичного изображения из HalfLife 2