Как стать автором
Обновить
7
0
Роман Сакутин @romaan27

Пользователь

Отправить сообщение

learnopengl. Урок 1.9 — Камера

Время на прочтение18 мин
Количество просмотров86K

imageВ предыдущем уроке обсуждалась матрица вида, и то, как её можно использовать для перемещения по сцене (мы немного отодвинули назад точку зрения наблюдателя). В OpenGL отсутствует концепция камеры, но можно попытаться её сымитировать, перемещая все объекты сцены в направлении противоположном движению наблюдателя, и тем самым создать иллюзию, что движемся мы сами.


В этом уроке мы рассмотрим, как можно создать камеру в OpenGL. Мы обсудим камеру типа FPS (First Person Shooter), которая позволит вам свободно перемещаться в трехмерной сцене. Кроме того, мы поговорим о вводе с клавиатуры и мыши, а закончим созданием собственного C++ класса камеры.


Всего голосов 16: ↑16 и ↓0+16
Комментарии4

Реализация псевдо-3D в гоночных играх

Время на прочтение40 мин
Количество просмотров51K

Введение


Почему псевдо-3d?

Зачем кому-то захочется создавать дороги в олдскульном стиле сегодня, когда каждый компьютер может на лету отрисовывать графику, состоящую из миллионов полигонов? Разве полигоны — не то же самое, только лучше? На самом деле нет. Полигоны действительно создают меньше искажений, но именно деформации в старых игровых движках дают такое сюрреалистическое, головокружительное чувство скорости, ощущаемое во многих дополигональных играх. Представьте, что область видимости управляется камерой. При движении по кривой в игре, использующей один из таких движков, похоже, что она заглядывает на кривую. Затем, когда дорога становится прямой, вид тоже выпрямляется. При движении в повороте с плохим обзором камера как будто заглядывает за выступ. И поскольку в таких играх не используется традиционный формат трасс с точными пространственными соотношениями, то можно без проблем создавать трассы, на которых игрок будет ездить с захватывающей дух скоростью. При этом не нужно беспокоиться о том, что объекты появляются на трассе быстрее, чем может среагировать игрок, потому что физическую реальность игры можно легко изменять в соответствии со стилем геймплея.

Но в такой системе есть и множество недостатков. Глубина физики, используемой в играх-симуляторах, будет утеряна, поэтому такие движки не приспособлены для этих игр. Однако они просты в реализации, быстро работают, а игры на их основе обычно очень интересны!

Стоит заметить, что не в каждой старой гоночной игре используются эти техники. В действительности описываемый в статье метод — это только один из способов создания псевдотрёхмерной дороги. В других случаях используются спроецированные и отмасштабированные спрайты или различные способы реального проецирования дороги. Степень смешения реальной математики с трюками зависит от создателей. Надеюсь, вам понравится изучение предложенного мной спецэффекта.
Всего голосов 92: ↑91 и ↓1+90
Комментарии18

Программист без диплома: что может и чего не может дать «домашнее обучение» в IT

Время на прочтение8 мин
Количество просмотров136K
Профессия разработчика программного обеспечения сегодня является одной из самых высокооплачиваемых. Однако чтобы стать классным специалистом, необходимо самосовершенствоваться и обучаться. К вершинам программирования можно прийти по-разному.

Кто-то разбирается во всем самостоятельно, благо в интернете встречается множество полезной литературы и бесплатных курсов (такие курсы ведут и преподаватели ИТМО — часть из них мы публиковали в наших предыдущих материалах: здесь и тут). Другой вариант — пойти в университет и получить диплом в области информационных технологий.

В сегодняшнем материале мы поговорим о том, какие особенности и сложности имеет процесс обучения в ИТ-сфере, и как с ними справляются на обоих «маршрутах».

Читать дальше →
Всего голосов 38: ↑28 и ↓10+18
Комментарии254

A/B тестирование: 70 ресурсов, которые послужат хорошим стартом для начинающих

Время на прочтение10 мин
Количество просмотров119K
Сделать веб-сайт доходным можно двумя способами. Первый – привлекать больше трафика, второй – повышать конверсию, т.е. побуждать большее количество посетителей становиться покупателями. Скорее всего, вы уже слышали о том, что трафик можно просто купить – сотни интернет-ресурсов предлагают эту услугу. А не лучше ли оптимизировать конверсию? Как узнать, что именно нужно проверить, и как провести A/B тестирование?

А/В тестированию и оптимизации уровня конверсии посвящено бесчисленное количество ресурсов. Однако, очень редко на сайтах подробно разбирается весь этот процесс целиком от самого начала («Что и как тестировать?») и до конца («Как улучшить конверсию?»).
Читать дальше →
Всего голосов 62: ↑53 и ↓9+44
Комментарии5

Абстрактно ориентированный программист

Время на прочтение7 мин
Количество просмотров54K
Начну с истории о программистах, которую мне приходилось слышать неоднократно.

Я попросил Джо написать простенькую программу, которая делает <xyz>. Работы там было на несколько часов, в худшем случае на день. Ему понадобилось несколько дней, за который он написал гораздо более сложный фреймворк, чем требовалось. Почему он снова так намудрил?

Возможно, дело в том, что Джо – Абстрактно ориентированный программист (АОП).
Читать дальше →
Всего голосов 76: ↑56 и ↓20+36
Комментарии84
2

Информация

В рейтинге
Не участвует
Откуда
Липецк, Липецкая обл., Россия
Дата рождения
Зарегистрирован
Активность