Makeup Prefabs
Basic Concepts
Each makeup prefab represents a specific region of the face and uses a similar set of settings:
// ...
{
"color": "0.95 0.70 0.54",
"finish": "natural",
"coverage": "mid"
}
// ...
color - A required solid color for the region in RGB string format.
finish - A required finish preset (for example, natural or matte).
See available options for the specific region below.
coverage - A required coverage intensity. It can be low, mid, high, or a number in [0.0, 1.0]. The string shorthands l/lo, m/mi, and h/hi/hig are also accepted.
Generally, makeup doesn't work with multiple faces, but some makeup effects may support 2 and more faces. Check out the description.
Makeup Base
"faces": [
{
"makeup_base": {
"mode": "quality",
"smooth": "0 1",
"smokey": 0
}
// ...
}
// ...
]
| Parameter | Description | Optional | Default Value |
|---|---|---|---|
| Processing mode. Allowed values are |
| |
| Smooths facial skin. The value contains two strengths in the range |
| |
| Smoky-eye index. A value of |
|
To enable multifaces feature for makeup_base, create another array in faces list and add makeup_base config to it.
Parameters for faces with indexes 1,2... must correspond to the parameters for the face with index 0.
"faces": [
{
"makeup_base": {
"mode": "speed",
"smooth": "0 1",
"smokey": 0
}
// ...
},
{
"makeup_base": {
"mode": "speed",
"smooth": "0 1",
"smokey": 0
}
// ...
}
// ...
]
Eye Bags
Usage
"faces": [
{
"makeup_eyebags": {
"alpha": 0.8
},
// ...
}
// ...
]
alpha (optional) - The opacity of under-eye circles, in the range [0, 1]. The default value is 0.8.
Preview
Foundation
Usage
"faces": [
{
"makeup_foundation": {
"color": "0.95 0.70 0.54",
"finish": "natural",
"coverage": "mid"
},
// ...
}
// ...
]
finish - One of: natural, matte, radiance.
Preview
Concealer
Usage
"faces": [
{
"makeup_concealer": {
"color": "0.94 0.73 0.66",
"finish": "natural",
"coverage": "mid"
},
// ...
}
// ...
]
finish - One of: natural, matte.
To enable multifaces feature for makeup_concealer, create another array in faces list and add makeup_concealer config to it.
Parameters for faces with indexes 1,2... must correspond to the parameters for the face with index 0.
"faces": [
{
"makeup_concealer": {
"color": "0.94 0.73 0.66",
"finish": "natural",
"coverage": "mid"
},
// ...
},
{
"makeup_concealer": {
"color": "0.94 0.73 0.66",
"finish": "natural",
"coverage": "mid"
},
// ...
}
// ...
]
Preview
Contour
Usage
"faces": [
{
"makeup_contour": {
"color": "1 0 0",
"finish": "normal",
"coverage": "mid"
},
// ...
}
// ...
]
finish - One of: normal.
To enable multifaces feature for makeup_contour, create another array in faces list and add makeup_contour config to it.
Parameters for faces with indexes 1,2... must correspond to the parameters for the face with index 0.
"faces": [
{
"makeup_contour": {
"color": "1 0 0",
"finish": "normal",
"coverage": "mid"
},
// ...
},
{
"makeup_contour": {
"color": "1 0 0",
"finish": "normal",
"coverage": "mid"
},
// ...
}
// ...
]
Preview
Highlighter
Usage
"faces": [
{
"makeup_highlighter": {
"color": "0.9 0.80 0.83",
"finish": "shimmer",
"coverage": "mid"
},
// ...
}
// ...
]
finish - One of: shimmer.
To enable multifaces feature for makeup_highlighter, create another array in faces list and add makeup_highlighter config to it.
Parameters for faces with indexes 1,2... must correspond to the parameters for the face with index 0.
"faces": [
{
"makeup_highlighter": {
"color": "0.9 0.80 0.83",
"finish": "shimmer",
"coverage": "mid"
},
// ...
},
{
"makeup_highlighter": {
"color": "0.9 0.80 0.83",
"finish": "shimmer",
"coverage": "mid"
},
// ...
}
// ...
]
Preview
Blush
Usage
"faces": [
{
"makeup_blush": {
"color": "0.88 0.65 0.75",
"finish": "shimmer",
"coverage": "mid"
},
// ...
}
// ...
]
finish - One of: shimmer, matte, cream_shine.
To enable multifaces feature for makeup_blush, create another array in faces list and add makeup_blush config to it.
Parameters for faces with indexes 1,2... must correspond to the parameters for the face with index 0.
"faces": [
{
"makeup_blush": {
"color": "0.88 0.65 0.75",
"finish": "shimmer",
"coverage": "mid"
},
// ...
},
{
"makeup_blush": {
"color": "0.88 0.65 0.75",
"finish": "shimmer",
"coverage": "mid"
},
// ...
}
// ...
]
Preview
Lipstick
Usage
"faces": [
{
"makeup_lipstick": {
"color": "0.88 0.47 0.61",
"finish": "shimmer",
"coverage": "high"
},
// ...
}
// ...
]
finish - One of: shimmer, matte_dry, matte_cream, matte_powder, matte_liquid, cream_shine, glossy_cream_plumping, balm, balm_light, glossy_cream_shimmer, cream_vividcolors, matte_velvet, cream_shine_glitter, matte_velvet_sparkling, matte_sheer_lightcolors, matte_cream_vividcolors, metallic_cream, matte_velvet_sparkling_lightcolors, matte_light, metallic_shine, metallic_dry_lightcolors, satin, shine, cream, clear, cream_darkcolors, clear_shimmer, metallic_sheer.
Preview
Lip Liner
Usage
"faces": [
{
"makeup_lipsliner": {
"color": "0.99 0.0 0.0",
"finish": "shimmer",
"coverage": "high",
"liner": "3 5"
},
// ...
}
// ...
]
finish - One of: shimmer.
liner (optional) - Contains two values: liner width and softness. The default value is 3 5.
Preview
Eyeshadow
Usage
"faces": [
{
"makeup_eyeshadow": [
{
"color": "0.21 0.42 0.32",
"finish": "matte",
"coverage": "high"
},
{
"color": "0.3 0.58 0.47",
"finish": "shimmer",
"coverage": "high"
},
{
"color": "1.00 0.91 0.27",
"finish": "metallic",
"coverage": "high"
}
],
// ...
}
// ...
]
The value can be an object containing one eyeshadow definition or an array of up to three eyeshadow definitions applied in sequence.
finish - One of: shimmer, matte, matte_powder,
glitter_metallic, glitter, metallic, glitter_sheer, cream.
To enable multifaces feature for makeup_eyeshadow, create another array in faces list and add makeup_eyeshadow config to it.
Parameters for faces with indexes 1,2... must correspond to the parameters for the face with index 0.
"faces": [
{
"makeup_eyeshadow": [
{
"color": "0.21 0.42 0.32",
"finish": "matte",
"coverage": "high"
},
{
"color": "0.3 0.58 0.47",
"finish": "shimmer",
"coverage": "high"
},
{
"color": "1.00 0.91 0.27",
"finish": "metallic",
"coverage": "high"
}
],
// ...
},
{
"makeup_eyeshadow": [
{
"color": "0.21 0.42 0.32",
"finish": "matte",
"coverage": "high"
},
{
"color": "0.3 0.58 0.47",
"finish": "shimmer",
"coverage": "high"
},
{
"color": "1.00 0.91 0.27",
"finish": "metallic",
"coverage": "high"
}
],
// ...
}
// ...
]
Preview
Eyelashes
Usage
"faces": [
{
"makeup_eyelashes": {
"color": "0 0 0",
"finish": "volume",
"coverage": "high",
"angle_upper": [7.5, 7.5, 7.5],
"delta_angle_upper": [30, 30, 30],
"length_upper": [1.5, 1.5, 1.5],
"h_angle_upper": [0, 0, 0],
"angle_lower": [25, 25, 25],
"delta_angle_lower": [30, 30, 30],
"length_lower": [1.2, 1.2, 1.2],
"h_angle_lower": [0, 0, 0]
},
// ...
}
// ...
]
finish - One of: volume, lengthening, lengthandvolume, natural, natural_bottom.
color, finish, and coverage are required. Missing fields are reported as runtime errors. For makeup_eyelashes, coverage supports mid and high presets, or a numeric value in [0, 1]; low is unsupported.
To enable multifaces feature for makeup_eyelashes, create another array in faces list and add makeup_eyelashes config to it.
Parameters for faces with indexes 1,2... must correspond to the parameters for the face with index 0.
"faces": [
{
"makeup_eyelashes": {
"color": "0 0 0",
"finish": "volume",
"coverage": "high"
},
// ...
},
{
"makeup_eyelashes": {
"color": "0 0 0",
"finish": "volume",
"coverage": "high"
},
// ...
}
// ...
]
The following optional parameters override the eyelash shape provided by the selected finish. Each value is a three-element numeric array: [temple, center, nose_bridge]. The runtime linearly interpolates these values along each eyelid. If omitted, the selected finish provides the value.
| Parameter | Description | Optional | Default Value |
|---|---|---|---|
| Three curl angles in degrees at the root of the upper eyelashes: |
| |
| Three additional curl angles in degrees, progressively applied toward the upper-eyelash tips: |
| |
| Three length multipliers for the upper eyelashes: |
| |
| Three horizontal rotation angles in degrees for the upper-eyelash length axis: |
| |
| Three curl angles in degrees at the root of the lower eyelashes: |
| |
| Three additional curl angles in degrees, progressively applied toward the lower-eyelash tips: |
| |
| Three length multipliers for the lower eyelashes: |
| |
| Three horizontal rotation angles in degrees for the lower-eyelash length axis: |
|
An unsupported finish logs The finish "<value>" does not exist in region "eyelashes". A malformed shape override logs that the parameter must be a three-element numeric array.
Preview
Eyeliner
Usage
"faces": [
{
"makeup_eyeliner": {
"color": "0.0 0.0 0.0",
"finish": "matte_liquid",
"coverage": "high"
},
// ...
}
// ...
]
finish - One of: shimmer, cream, matte_liquid,
matte_cream, matte_dark, metallic, glitter, cream_lightcolors.
To enable multifaces feature for makeup_eyeliner, create another array in faces list and add makeup_eyeliner config to it.
Parameters for faces with indexes 1,2... must correspond to the parameters for the face with index 0.
"faces": [
{
"makeup_eyeliner": {
"color": "0.0 0.0 0.0",
"finish": "matte_liquid",
"coverage": "high"
},
// ...
},
{
"makeup_eyeliner": {
"color": "0.0 0.0 0.0",
"finish": "matte_liquid",
"coverage": "high"
},
// ...
}
// ...
]
Preview
Eyebrows
Usage
"faces": [
{
"makeup_eyebrows": {
"color": "0.39 0.26 0.27",
"finish": "matte",
"coverage": "mid"
},
// ...
}
// ...
]
finish - One of: matte, wet, clear.
Preview
Lip Shine
Usage
"faces": [
{
"makeup_lipsshine": {
"color": "1.0 0.0 0.0",
"finish": "glitter",
"coverage": "mid"
},
// ...
}
// ...
]
finish - One of: shine, glitter.
Preview
Lip Gloss
Usage
"faces": [
{
"makeup_lipsgloss": {
"threshold": 0.96,
"contour": 0.45,
"weakness": 0.5,
"multiplier": 1.5,
"saturation": 0.1,
"alpha": 0.8
},
// ...
}
// ...
]
| Parameter | Description | Optional | Default Value |
|---|---|---|---|
| Gloss threshold. Higher values produce a smaller highlight. |
| |
| Highlight contour softness. |
| |
| Highlight-mask weakness. Higher values produce a smaller highlight. |
| |
| Highlight-mask multiplier. |
| |
| Highlight visibility. |
| |
| Gloss saturation. |
|
Preview
Lip Chameleon
Usage
"faces": [
{
"makeup_lipschameleon": {
"colors": [
{
"color": "#3342b0",
"finish": "metallic_cream",
"coverage": "high"
},
{
"color": "#a028b0",
"finish": "metallic_cream",
"coverage": "high"
}
],
"threshold": 0.92,
"contour": 0.3,
"weakness": 0.25
}
// ...
}
// ...
]
| Parameter | Description | Optional | Default Value |
|---|---|---|---|
| An array containing exactly two lipstick objects. Parameters:
| + | + |
| Chameleon-mask threshold. Higher values produce a smaller mask. |
| |
| Chameleon-mask contour softness. |
| |
| Chameleon-mask weakness. Higher values produce a smaller mask. |
|
colors is required. threshold, contour, and weakness are optional and use the defaults shown in the table. The runtime applies exactly the two entries in colors.
Preview
Eyelid Gloss
Usage
"faces": [
{
"makeup_eyelidsgloss": {
"threshold": 0.95,
"contour": 0.6,
"weakness": 0.6,
"multiplier": 1.5,
"saturation": 0.1,
"alpha": 1
}
// ...
}
// ...
]
| Parameter | Description | Optional | Default Value |
|---|---|---|---|
| Gloss threshold. Higher values produce a smaller highlight. |
| |
| Highlight contour softness. |
| |
| Highlight-mask weakness. Higher values produce a smaller highlight. |
| |
| Highlight-mask multiplier. |
| |
| Highlight visibility. |
| |
| Gloss saturation. |
|
Preview
Eyelid Chameleon
Usage
"faces": [
{
"makeup_eyelids_chameleon": {
"colors": {
"bottom": [
{
"color": "#3342b0",
"finish": "shimmer",
"coverage": "high"
},
{
"color": "#3342b0",
"finish": "shimmer",
"coverage": "high"
},
{
"color": "#3342b0",
"finish": "shimmer",
"coverage": "high"
}
],
"upper": [
{
"color": "#a028b0",
"finish": "shimmer",
"coverage": "high"
},
{
"color": "#a028b0",
"finish": "shimmer",
"coverage": "high"
},
{
"color": "#a028b0",
"finish": "shimmer",
"coverage": "high"
}
]
},
"threshold": 0.92,
"contour": 0.3,
"weakness": 0.25
}
// ...
}
// ...
]
| Parameter | Description | Optional | Default Value |
|---|---|---|---|
| An object containing Parameters:
| + | + |
| Chameleon-mask threshold. Higher values produce a smaller mask. |
| |
| Chameleon-mask contour softness. |
| |
| Chameleon-mask weakness. Higher values produce a smaller mask. |
|
colors must contain bottom, upper, or both. Each array accepts one to three definitions. threshold, contour, and weakness are optional and use the defaults shown in the table.
Preview
Lip Glitter
Usage
"faces": [
{
"makeup_lips_glitter": {
"color": "0.7 0.3 0.7",
"alpha": 0.75,
"light_direction": "0.5 0.3 0.8"
}
// ...
}
// ...
]
| Parameter | Description | Optional | Default Value |
|---|---|---|---|
| Glitter color in RGB format. |
| |
| Glitter effect visibility. |
| |
| Light-direction vector. The default is used when the squared magnitude of the supplied vector is less than or equal to |
|
Preview
Eyelid Glitter
Usage
"faces": [
{
"makeup_eyelids_glitter": {
"color": "0.7 0.3 0.7",
"alpha": 0.75,
"light_direction": "0.5 -0.6 0.7"
}
// ...
}
// ...
]
| Parameter | Description | Optional | Default Value |
|---|---|---|---|
| Glitter color in RGB format. |
| |
| Glitter effect visibility. |
| |
| Light-direction vector. The default is used when the squared magnitude of the supplied vector is less than or equal to |
|
Preview
All Features
Let's combine all features:
Example
{
"faces": [
{
"makeup_base": {
"smooth": "0 1",
"mode": "quality"
},
"makeup_eyebags": {
"alpha": 0.8
},
"makeup_foundation": {
"color": "0.95 0.70 0.54",
"finish": "natural",
"coverage": "mid"
},
"makeup_concealer": {
"color": "0.94 0.73 0.66",
"finish": "natural",
"coverage": 1
},
"makeup_contour": {
"color": "1 0 0",
"finish": "normal",
"coverage": "mid"
},
"makeup_highlighter": {
"color": "0.9 0.80 0.83",
"finish": "shimmer",
"coverage": "mid"
},
"makeup_blush": {
"color": "0.88 0.65 0.75",
"finish": "shimmer",
"coverage": "mid"
},
"makeup_lipstick": {
"color": "0.88 0.47 0.61",
"finish": "shimmer",
"coverage": "high"
},
"makeup_lipsliner": {
"color": "0.99 0.0 0.0",
"finish": "shimmer",
"coverage": "high",
"liner": "3 5"
},
"makeup_eyeshadow": [
{
"color": "0.21 0.42 0.32",
"finish": "matte",
"coverage": "high"
},
{
"color": "0.3 0.58 0.47",
"finish": "shimmer",
"coverage": "high"
},
{
"color": "1.00 0.91 0.27",
"finish": "metallic",
"coverage": "high"
}
],
"makeup_eyeliner": {
"color": "0.0 0.0 0.0",
"finish": "matte_liquid",
"coverage": "high"
},
"makeup_eyebrows": {
"color": "0.39 0.26 0.27",
"finish": "matte",
"coverage": "mid"
},
"makeup_lipsshine": {
"color": "1.0 0.0 0.0",
"finish": "glitter",
"coverage": "mid"
},
"makeup_eyelashes": {
"color": "1 0 0",
"finish": "volume",
"coverage": "high"
},
"makeup_lipsgloss": {
"threshold": 0.96,
"contour": 0.45,
"weakness": 0.5,
"multiplier": 1.5,
"saturation": 0.1,
"alpha": 0.8
},
"makeup_eyelidsgloss": {
"threshold": 0.95,
"contour": 0.6,
"weakness": 0.6,
"multiplier": 1.5,
"saturation": 0.1,
"alpha": 1
}
}
],
"scene": "test_makeup",
"version": "2.0.0"
}
Preview

























