Этот курс научит вас создавать полноценный движок лучевого трассирования с нуля. Мы будем использовать алгоритм, похожий на тот, который использовался в Wolfenstein 3D. Итоговый проект будет написан на JavaScript и C. В нем будут реализованы движение игрока, вид карты в 2D, проекция стен в 3D, текстурированные стены, спрайты и другие техники оптимизации.
Этот курс будет разделен на две важные части:
Первая часть курса использует JavaScript для изучения теории и математики, лежащих в основе алгоритма лучевого трассирования. JavaScript — это простой высокоуровневый скриптовый язык, который помогает нам не отвлекаться на детали реализации.
Вторая часть курса использует язык программирования C для реализации скомпилированной версии нашего лучевого трассировщика, включая текстурированные стены и спрайты. Также на языке C мы обсудим важные аспекты оптимизации и производительности нашего кода.
Инструменты, которые вам понадобятся: Вам потребуется веб-браузер, поддерживающий JavaScript, и небольшой компилятор для C. Все эти инструменты кросс-платформенные, так что вы сможете следовать инструкциям на Windows, macOS или Linux!
Алгоритм лучевого трассирования Wolfenstein 3D, который мы будем изучать, в значительной степени основан на тригонометрии, поэтому убедитесь, что у вас под рукой есть ручка и бумага для лекций. Я постараюсь, чтобы мы рассмотрели и поняли каждую формулу, которую встретим на нашем пути!
Посмотреть больше
Это пробный урок. Оформите подписку, чтобы получить доступ ко всем материалам курса. Премиум
Ограничение времени просмотра
Вы можете просматривать пробный урок только 10 минут. Получите полный доступ, чтобы смотреть без ограничений.
Gustavo Pezzi - преподаватель университета в Лондоне, Великобритания. Он получил несколько образовательных наград в качестве учителя и также является основателем pikuma.com. Густаво преподает основы информатики и математики; его академический путь включает такие учебные заведения, как Государственный университет Питтсбурга, Городской университет Лондона и Оксфордский университет.
You should be thanking and supporting the professor, not the piracy website.
Команда внимательно читает ваши комментарии и оперативно на них реагирует. Вы можете спокойно оставлять запросы на обновления или задавать любые вопросы о курсе здесь.
Этот курс является мягким введением в мир физики 2D игр! Мы рассмотрим всю прекрасную математику, которая лежит в основе большинства физических движков, начиная с тщательного изучения векторов, матриц, основ тригонометрии, столкновений твердых тел, а также немного затронем и калькулюс.
Этот курс является полным погружением в основы компьютерной графики! Вы узнаете, как работает программный 3D-движок «под капотом», и научитесь использовать язык программирования C для написания полноценного программного растеризатора с нуля, включая текстуры, камеру, обрезку и загрузку сложных OBJ-файлов. Пиксель за пикселем, треугольник за треугольником, меш за мешем.