Поделиться через


Рекламные щиты (Direct3D 9)

При создании трехмерных сцен приложение иногда может получить преимущества производительности, отрисовка двухd-объектов таким образом, чтобы они выглядели как трехмерные объекты. Это основная идея, лежащая в основе техники билборда.

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

Во многих играх используется рекламный щит для анимированных спрайтов. Например, когда пользователь перемещается через трехмерный лабиринт, он может увидеть оружие или награды, которые можно забрать. Обычно это двухугольные изображения, текстурированные на прямоугольном примитиве. Рекламные щиты часто используются в играх для отрисовки изображений деревьев, кустов и облаков.

При применении изображения к рекламному щиту прямоугольный примитив необходимо сначала повернуть, чтобы полученное изображение было обращено к пользователю. Затем приложение должно преобразовать его в положение. Затем приложение может применить текстуру к примитиву.

Рекламные щиты лучше всего подходят для симметричных объектов, особенно объектов, симметричных вдоль вертикальной оси. Это также требует, чтобы высота точки зрения не увеличивалось слишком сильно. Если пользователю разрешено просматривать рекламные баннеры сверху, становится очевидно, что объект является двухd, а не трехмерным.

Примеры альфа-канала