Factorio.com|Forums|Wiki|Mod Portal|API Docs Prototype|Runtime|Auxiliary

# Factorio Prototype Docs Version 2.0.7

## CoverGraphicProcessionLayer :: struct

Draws a layer of cloud texture covering the screen. It can fade in an out based on opacity and using the picture mask as gradient of areas which fade in soon or later.

There are two important concepts to understand:

- `mask` refers to something like a depth texture. It is applied across the whole screen and determines how the entire graphic fades in and out.

- `effect` in this context refers to clipping out portion of the cover graphic. It can use an effect_graphic. `is_cloud_effect_advanced` makes the `effect` modify opacity threshold of the `mask` rather than multiplying alpha.

Additionally an area can be masked out by range or effect mask.

## Properties

- default
- sorted

type | :: `"cover-graphic"` |
reference_group optional | :: ProcessionLayerInheritanceGroupID | The group this layer belongs to, for inheritance.
The group this layer belongs to, for inheritance.
inherit_from optional | :: ProcessionLayerInheritanceGroupID | Adds the final position value from given layer to this one.
Adds the final position value from given layer to this one.
graphic optional | :: ProcessionGraphic | Main texture of the layer.
Main texture of the layer.
mask_graphic optional | :: ProcessionGraphic | Opacity gradient of the layer.
Opacity gradient of the layer.
effect_graphic optional | :: ProcessionGraphic | Used by certain effects.
Used by certain effects.
render_layer optional | :: RenderLayer |
secondary_draw_order optional | :: int8 |
is_cloud_effect_advanced optional | :: bool | Advanced cloud effect mask modifies the regular mask thresholds instead of being a flat multiplication of the resulting opacity.
Advanced cloud effect mask modifies the regular mask thresholds instead of being a flat multiplication of the resulting opacity.
is_quad_texture optional | :: bool | The texture and mask are interpreted as four smaller textures that are randomly tiled.
The texture and mask are interpreted as four smaller textures that are randomly tiled.
rotate_with_pod optional | :: bool | Add rotation of the pod to the cloud rotation.
Add rotation of the pod to the cloud rotation.
texture_relative_to optional | :: EffectRelativeTo | Where the tiled texture is centered and rotated.
Where the tiled texture is centered and rotated.
distance_traveled_strength optional | :: Vector | How much the pod's distance traveled moves the cloud coordinates
How much the pod's distance traveled moves the cloud coordinates
pod_movement_strength optional | :: Vector | How much the pod's position moves the cloud coordinates
How much the pod's position moves the cloud coordinates
world_size optional | :: Vector | Size the textures are scaled to in the world.
Size the textures are scaled to in the world.
effect optional | :: CoverGraphicEffectData | Clips the graphic.
Clips the graphic.
alt_effect optional | :: CoverGraphicEffectData | Clips the graphic.
Clips the graphic.
frames | :: array[CoverGraphicProcessionLayerBezierControlPoint] | Default values if unspecified: opacity : 1.0 rotation : 0.0 effect_scale_min : 0.0 effect_scale_max : 1.0 effect_shift : {0, 0} alt_effect_scale_min : 0.0 alt_effect_scale_max : 1.0 alt_effect_shift : {0, 0} offset : {0, 0}
Default values if unspecified: opacity : 1.0 rotation : 0.0 effect_scale_min : 0.0 effect_scale_max : 1.0 effect_shift : {0, 0} alt_effect_scale_min : 0.0 alt_effect_scale_max : 1.0 alt_effect_shift : {0, 0} offset : {0, 0}

frames | :: array[CoverGraphicProcessionLayerBezierControlPoint] | Default values if unspecified: opacity : 1.0 rotation : 0.0 effect_scale_min : 0.0 effect_scale_max : 1.0 effect_shift : {0, 0} alt_effect_scale_min : 0.0 alt_effect_scale_max : 1.0 alt_effect_shift : {0, 0} offset : {0, 0}
Default values if unspecified: opacity : 1.0 rotation : 0.0 effect_scale_min : 0.0 effect_scale_max : 1.0 effect_shift : {0, 0} alt_effect_scale_min : 0.0 alt_effect_scale_max : 1.0 alt_effect_shift : {0, 0} offset : {0, 0}
type | :: `"cover-graphic"` |
alt_effect optional | :: CoverGraphicEffectData | Clips the graphic.
Clips the graphic.
distance_traveled_strength optional | :: Vector | How much the pod's distance traveled moves the cloud coordinates
How much the pod's distance traveled moves the cloud coordinates
effect optional | :: CoverGraphicEffectData | Clips the graphic.
Clips the graphic.
effect_graphic optional | :: ProcessionGraphic | Used by certain effects.
Used by certain effects.
graphic optional | :: ProcessionGraphic | Main texture of the layer.
Main texture of the layer.
inherit_from optional | :: ProcessionLayerInheritanceGroupID | Adds the final position value from given layer to this one.
Adds the final position value from given layer to this one.
is_cloud_effect_advanced optional | :: bool | Advanced cloud effect mask modifies the regular mask thresholds instead of being a flat multiplication of the resulting opacity.
Advanced cloud effect mask modifies the regular mask thresholds instead of being a flat multiplication of the resulting opacity.
is_quad_texture optional | :: bool | The texture and mask are interpreted as four smaller textures that are randomly tiled.
The texture and mask are interpreted as four smaller textures that are randomly tiled.
mask_graphic optional | :: ProcessionGraphic | Opacity gradient of the layer.
Opacity gradient of the layer.
pod_movement_strength optional | :: Vector | How much the pod's position moves the cloud coordinates
How much the pod's position moves the cloud coordinates
reference_group optional | :: ProcessionLayerInheritanceGroupID | The group this layer belongs to, for inheritance.
The group this layer belongs to, for inheritance.
render_layer optional | :: RenderLayer |
rotate_with_pod optional | :: bool | Add rotation of the pod to the cloud rotation.
Add rotation of the pod to the cloud rotation.
secondary_draw_order optional | :: int8 |
texture_relative_to optional | :: EffectRelativeTo | Where the tiled texture is centered and rotated.
Where the tiled texture is centered and rotated.
world_size optional | :: Vector | Size the textures are scaled to in the world.
Size the textures are scaled to in the world.

## Properties

### type :: `"cover-graphic"`

### reference_group :: ProcessionLayerInheritanceGroupID optional

The group this layer belongs to, for inheritance.

### inherit_from :: ProcessionLayerInheritanceGroupID optional

Adds the final position value from given layer to this one.

### graphic :: ProcessionGraphic optional

Main texture of the layer.

### mask_graphic :: ProcessionGraphic optional

Opacity gradient of the layer.

### effect_graphic :: ProcessionGraphic optional

Used by certain effects.

### render_layer :: RenderLayer optional

Default: `"object"`

### secondary_draw_order :: int8 optional

Default: `0`

### is_cloud_effect_advanced :: bool optional

Default: `false`

Advanced cloud effect mask modifies the regular mask thresholds instead of being a flat multiplication of the resulting opacity.

### is_quad_texture :: bool optional

Default: `false`

The texture and mask are interpreted as four smaller textures that are randomly tiled.

### rotate_with_pod :: bool optional

Default: `false`

Add rotation of the pod to the cloud rotation.

### texture_relative_to :: EffectRelativeTo optional

Default: `"ground-origin"`

Where the tiled texture is centered and rotated.

### distance_traveled_strength :: Vector optional

Default: {0,0}

How much the pod's distance traveled moves the cloud coordinates

### pod_movement_strength :: Vector optional

Default: {1,1}

How much the pod's position moves the cloud coordinates

### world_size :: Vector optional

Default: {512, 512}

Size the textures are scaled to in the world.

### effect :: CoverGraphicEffectData optional

Clips the graphic.

### alt_effect :: CoverGraphicEffectData optional

Clips the graphic.

### frames :: array[CoverGraphicProcessionLayerBezierControlPoint]

Default values if unspecified:

- opacity : 1.0

- rotation : 0.0

- effect_scale_min : 0.0

- effect_scale_max : 1.0

- effect_shift : {0, 0}

- alt_effect_scale_min : 0.0

- alt_effect_scale_max : 1.0

- alt_effect_shift : {0, 0}

- offset : {0, 0}

#### CoverGraphicProcessionLayerBezierControlPoint :: struct

One frame in time for a Bezier interpolation.

## Properties

### timestamp :: MapTick optional

Mandatory if `opacity` or `rotation` or `effect_scale_min` or `effect_scale_max` is defined.

### opacity :: double optional

`opacity` and `opacity_t` interpolate a double smoothly over time.

### opacity_t :: double optional

Bidirectional tangent at the given timestamp.

### rotation :: double optional

`rotation` and `rotation_t` interpolate a double smoothly over time.

### rotation_t :: double optional

Bidirectional tangent at the given timestamp.

### effect_scale_min :: double optional

`effect_scale_min` and `effect_scale_min_t` interpolate a double smoothly over time.

### effect_scale_min_t :: double optional

Bidirectional tangent at the given timestamp.

### effect_scale_max :: double optional

`effect_scale_max` and `effect_scale_max_t` interpolate a double smoothly over time.

### effect_scale_max_t :: double optional

Bidirectional tangent at the given timestamp.

### alt_effect_scale_min :: double optional

`alt_effect_scale_min` and `alt_effect_scale_min_t` interpolate a double smoothly over time.

### alt_effect_scale_min_t :: double optional

Bidirectional tangent at the given timestamp.

### alt_effect_scale_max :: double optional

`alt_effect_scale_max` and `alt_effect_scale_max_t` interpolate a double smoothly over time.

### alt_effect_scale_max_t :: double optional

Bidirectional tangent at the given timestamp.

### effect_shift :: Vector optional

`effect_shift` and `effect_shift_t` interpolate a vector smoothly over time using `effect_shift_rate` and `effect_shift_rate_t` for a 0-1 rate curve.

Vector value.

### effect_shift_t :: Vector optional

Vector tangent.

### effect_shift_rate :: double optional

Rate 0-1 value.

### effect_shift_rate_t :: double optional

Rate tangent.

### alt_effect_shift :: Vector optional

`alt_effect_shift` and `alt_effect_shift_t` interpolate a vector smoothly over time using `alt_effect_shift_rate` and `alt_effect_shift_rate_t` for a 0-1 rate curve.

Vector value.

### alt_effect_shift_t :: Vector optional

Vector tangent.

### alt_effect_shift_rate :: double optional

Rate 0-1 value.

### alt_effect_shift_rate_t :: double optional

Rate tangent.

### offset :: Vector optional

`offset` and `offset_t` interpolate a vector smoothly over time using `offset_rate` and `offset_rate_t` for a 0-1 rate curve.

Vector value.

### offset_t :: Vector optional

Vector tangent.

### offset_rate :: double optional

Rate 0-1 value.

### offset_rate_t :: double optional

Rate tangent.

Type used in

- ProcessionLayer