Types/IconData: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
(Added some precisions about scale, shift and shadow, based on my tests.)
m (Added an example)
Line 48: Line 48:


• The final combination of icons will always be resized in GUI based on the first icon layer's size, but won't be resized when displayed on machines in alt-mode.
• The final combination of icons will always be resized in GUI based on the first icon layer's size, but won't be resized when displayed on machines in alt-mode.
(example: recipe first icon is size 128, scale 1, the icon group will be displayed at resolution /4 to fit the 32px GUI boxes, but will be displayed 4 times as large on buildings)


• Shift values are based on final size (icon_size * scale) of the first icon.
• Shift values are based on final size (icon_size * scale) of the first icon.

Revision as of 12:15, 8 August 2021

Basics

Data of one icon "layer" for the icons property of the Types/IconSpecification.

Mandatory properties

icon

Type: Types/FileName

The path to the icon.

icon_size

Type: Types/SpriteSizeType

Mandatory if icon_size is not specified outside of icons. The size of the square icon, in pixels, e.g. 32 for a 32px by 32px icon.

Optional properties

tint

Type: Types/Color

Default: {r=1, g=1, b=1, a=1}

Tint of the icon. Default is when tint = nil. See Type for full details.

shift

Type: Types/vector

Default: {0, 0}

Used to offset the icon "layer" from the overall icon.

scale

Type: Types/double

Default for items/recipes: (32/icon_size)

Default for technologies: (256/icon_size)

When set, specifies the scale of the icon on the GUI scale. Scale 2 means that the icon will be 2 times bigger on screen (and more pixelated).

icon_mipmaps

Type: Types/uint8

Default: 0

Notes

• Only the first icon layer will display a shadow.

• The final combination of icons will always be resized in GUI based on the first icon layer's size, but won't be resized when displayed on machines in alt-mode. (example: recipe first icon is size 128, scale 1, the icon group will be displayed at resolution /4 to fit the 32px GUI boxes, but will be displayed 4 times as large on buildings)

• Shift values are based on final size (icon_size * scale) of the first icon.

Examples

{
  icon = "__base__/graphics/icons/fluid/heavy-oil.png",
  icon_size = 64,
  scale = 0.5,
  shift = {4, -8}
}