Cosmetics
Cosmetics add visual components to actors based on a data-driven BLCosmeticDef
.
Properties
Skeletal Meshes
Spawns skeletal mesh component(s) for each entry.
Static Meshes
Spawns static mesh component(s) for each entry.
Niagara Systems
Spawns niagara system(s) for each entry.
Niagara system parameters are not currently supported, but they may be in the future.
Child Actors
Spawns child actor(s) for each entry.
Material Overrides
Overrides a material for each entry.
Material Parameter Overrides
Overrides a material parameter for each entry.
The cosmetics component will spawn a dynamic material if you add any material parameter overrides.
Tags
Tags are used to hide cosmetics with concealers. For example, when equipping a pair of gloves, we might want to hide the character's original hands mesh. The example map handles this with two tags on the hands mesh:
Cosmetic.Layer.Skin
Cosmetic.Slot.Gloves
The gloves concealer then hides all cosmetics which have BOTH Cosmetic.Layer.Skin
and Cosmetic.Slot.Gloves
.
Usage
- Add a
BLCosmeticComponent
to your actor. - Add the
CosmeticsAttachSource
tag to a primitive component on your actor. All cosmetics will be attached to the component with this tag; we recommend the skeletal mesh component. - Add default cosmetics. These will automatically be spawned on
BeginPlay
orRegister
depending on theDefaultCosmeticsSpawnSchedule
:Register
: Cosmetics will be spawned on Register. They will be visible in editor preview windows.BeginPlay
: Cosmetics will be spawned on BeginPlay. They will not be visible in editor preview windows.
- (Optional) Add cosmetics to the component at runtime (they must be added on the server).
- These cosmetics will be replicated to each client; when replicated they will spawn visual components on the actor.
- (Optional) You may also add concealers to the cosmetic component. Concealers hide cosmetics based on their gameplay tags.