Billboards Vol.1 Gallery

2_TriPrism_1.jpg


General Overview

Fully customizable, contemporary urban-type billboard kit with 2 display types, and multiple support frames based on height.

Easily swap out any images you want to display, and configure an auto-generated billboard with a convenient and optimized blueprint tool.

Features

Specs

Number of Textures: UE4 = 87, UE5 = 90

Number of Materials: 35

Number of Material Functions: 8

Number of Meshes: UE4 = 22, UE5 = 29

Mesh LODs: Yes / Handcrafted (for UE4)

Number of Sounds/Cues: 4

Number of Blueprints: 1

Number of Data Structures: 1


Important Notes & Tips

“Why are materials acting different outside the blueprint?”

The Custom Primitive Data Workflow in Materials

In this pack, we adopted a micro-optimization approach in an attempt to make our more advanced effects (Weathering FX, Custom Paint Colors, Prism mesh animations, etc.) very optimized with low overhead from the get-go. This means that, instead of generating dynamic material instances at runtime, the default behavior for the billboard blueprint is to make use of Custom Primitive Data to send data to the materials that drives these advanced effects.

<aside> 💡 For those unfamiliar with Custom Primitive Data, you can read about it in detail on the engine wiki, but here is a brief explanation provided by the page on the wiki:

Use your Materials to store custom data in an index array that is accessible through Blueprint and code to effect changes for scene primitives when using the Custom Primitive Data (CPD) workflow. This functions similarly to how Material Instance Dynamics (MID) does, providing a way for you to control parts of your material graph dynamically at runtime through scalar and vector parameters. The difference is that CPD has the advantage of storing data on the primitives themselves rather than with the Material Instance, which lowers the number of draw calls for similarly placed geometry in your Levels (such as walls, floors, or other duplicated geometry).

</aside>

Untitled

Now, while this is the default behavior, you can override the blueprint to instead generate dynamic materials to make use of what is arguably the more convenient workflow. Sure, the differences in performance might be negligible in an isolated use-case, but we wanted to make sure this pack would scale to practical usage in the large environments. That is the reason why the default behavior is set to make use of Custom Primitive Data.


Tutorials

Add a New Billboard to Your Scene