BillboardAsset описывает, как отображается рекламный щит.
Билборды — это способ упрощённой отрисовки сложных 3D-объектов на большом расстоянии (метод уровня детализации, LOD). Поскольку объект далеко, его редко нужно отрисовывать со всей детализацией: он мал на экране и вряд ли окажется смысловым центром кадра. Вместо этого объект можно заранее отрендерить в текстуру и наложить её на очень простую плоскую геометрию, повёрнутую к камере (обычно на четырёхугольник), — это и есть билборд. На большом расстоянии ориентация объекта относительно камеры почти не меняется, поэтому билборд от кадра к кадру выглядит почти как сам объект и не требует перерисовки модели. Класс BillboardAsset позволяет создавать билборды, отрендеренные с нескольких направлений, благодаря чему BillboardAsset экономно представляет объект с низкой детализацией при любом примерно горизонтальном ракурсе.
BillboardAsset обычно создается путем импорта ресурсов SpeedTree. Вы также можете создать свой собственный, как только вы узнаете, как описан билборд.
Геометрия SpeedTree рекламного щита обычно более сложна, чем у обычного четырехугольника. Используя больше вершин для вырезания пустой части изображения рекламного щита, производительность рендеринга может быть потенциально улучшена из-за того, что графической системе не нужно рисовать столько избыточных прозрачных пикселей. Вы имеете доступ к данным геометрии через BillboardAsset.vertices и BillboardAsset.indices.
Все вершины рассматриваются в пространстве UV, поскольку геометрия должна быть текстурирована изображениями билбордов. Вершины UV легко расширяются до вершин пространства 3D, если знать ширину, высоту, дно билборда и направление, в котором он находится в данный момент. Предположим, что у нас есть билборд, расположенный в (0,0,0) и смотрящий на отрицательную ось Z, координаты пространства 3D рассчитываются следующим образом:
X = (u - 0.5) * ширина
Y = v * высота + внизу
Z = 0

Вершины пространства UV расширяются до вершин пространства 3D, с рекламным щитом SpeedTree на (0, 0, 0) в пространстве 3D.
Для того, чтобы отобразить что-то похожее на настоящую сетку 3D, размещенную на рекламных щитах, рекламные щиты SpeedTree выбирают соответствующее изображение из нескольких предварительно отображенных изображений в соответствии с текущим направлением просмотра.

Восемь изображений рекламного щита SpeedTree запекаются. Изображения создаются путем захвата рендируемого изображения дерева 3D под различными углами зрения, равномерно распределенными по оси Y. Первое изображение всегда начинается в положительном направлении оси X (или 0°, если вы представляете единичную окружность сверху).
Все изображения должны быть атласированы вместе в одной текстуре. Каждое изображение представлено как Vector4 из {левое u, верхняя часть, ширина в u, высота в v} в атласе. Вы имеете доступ ко всем изображениям через BillboardAsset.imageTexCoords. SpeedTree Modeler всегда экспортирует нормальную текстуру наряду с диффузной текстурой для еще лучшего приближения освещения, и он делит тот же макет атласа с диффузной текстурой.
Как только BillboardAsset будет построен, используйте BillboardRenderer чтобы представить его.