Decorations

Recommended video: Batocera Nation's excellent "How to Install Bezels in Batocera".

In the 80s and 90s, most video game screens had a 4:3 aspect ratio. Nowadays, screens mostly use a 16:9 ratio, which means that they provide extra space on the sides compared to a 4:3 aspect ratio.

Rather than stretching out the 4:3 image to fit into a 16:9 model, you can fill the extra space with a background image that provides an even more immersive experience. You can simulate the looks of an old TV set, or even a background that matches the game you are playing. We call this type of decoration a bezel.

Not every system and emulator supports bezels. Most Retroarch cores should support the right bezel out-of-the-box. Standalone cores and more modern system often do not support bezels or do not need any, because the systems already use 16:9 ratio.

The DECORATION menu provides you several options for this:

  • several AMBIANCE options that simulate an retro TV set or an old arcade alley
  • integration with the Bezel Project that provides personalized bezels per gaming system, and for many of them even personalized bezels per game! You can select the systems you want to enable theBezelProject from the menu UPDATES & DOWNLOADSTHE BEZEL PROJECT.

You can also add your own bezels to Batocera.

Example of a well known arcade game, with theBezelProject on (and curvature shader applied).

If you have a nice TV and ask for a 4K 3840×2160 resolution to the emulators, but with a bezel that is HD 1920×1080: by default Batocera will add black borders around the bezel. If you want your display to be full screen, you can either:

  1. switch to a lower resolution (like 1920×1080)
  2. turn on the STRETCH BEZELS option in GAMES SETTINGS
  3. add a line mame.bezel_stretch=1 in your batocera.conf for each emulator you want to stretch, or global.bezel_stretch=1 if you want to enable it for all systems.

Turning on bezel stretching for high resolutions has a significant impact on emulation performance.

  • Connect to your batocera.linux box, via the network for example
  • In the /userdata/ folder, if it's not already there create a directory called decorations (next to roms, bios, …)

  • Inside the decorations folder, create a new directory, let's call it mybezels
  • From the main batocera.linux menu go to GAMES SETTINGSDECORATIONS
  • Check that the mybezels decoration is available and select it

  • Note 1: default bezels are available at our Github page. All default bezels have a 1920×1080 resolution and will be resized to your resolution, as long as your aspect ratio (width/height) is at least 16:10 (i.e. the screen is “wide”, like 16:9 compared to a 4:3 classic aspect ratio).
  • Note 2: if you create a “default” folder instead of a custom name, bezels will replace the existing “default” bezels (the 2 folders will be virtually merged, the /userdata/ bezels take priority).

In Batocera, you can create:

  • bezels for specific games on specific systems (mario on SNES)
  • bezels for specific games on all systems (mario on all systems)
  • bezels for specific system (a bezel for SNES, one for GB …)
  • a default bezel for all

You can have all four at the same time. In case your ROM/system selection matches more than one option, Batocera will apply the rules in the order listed above. If there is no suitable bezel, no bezel will be displayed.

A bezel is composed of 2 files. A .png file and a .info file. See explanations below.

Specific games on specific systems

Bezels for a specific game on a specific system must be placed in the games/<system>/ directory and have the same name as the ROM.

Example: mybezels/games/snes/mario.png and mybezels/games/snes/mario.info

With this example, your bezel will be used for the game ROM mario only on SNES. If you have a ROM named mario on GB or NES, it will not be displayed.

Specific games

Bezels for specific games on all systems must be placed in the games/ directory and have the same name as the ROM.

Example: mybezels/games/mario1.png and mybezels/games/mario1.info

In that case, if you have two ROM files named mario1, one for SNES and one for GB, both will display your bezel.

Specific systems

Bezels for specific systems must be placed in the systems directory and have the same name as the system.

Example: mybezels/systems/snes.png and mybezels/systems/snes.info

Default bezel

The default bezel must be at top level and have the name default.png and default.info

Example: Create the file mybezels/default.png. A size of 1920×1080 is recommended. The bezel will be drawn over the emulator rendering. Thus, you must keep transparent parts on the image.

the .info file

The .info file is a text file describing how the image must be displayed over the emulator.

  • width: width of the image
  • height: height of the image
  • top: top/left/bottom/right define the marge in pixel let to render the emulator.
  • left: top/left/bottom/right define the marge in pixel let to render the emulator.
  • bottom: top/left/bottom/right define the marge in pixel let to render the emulator.
  • right: top/left/bottom/right define the marge in pixel let to render the emulator.
  • opacity: a value between 0.0 and 1.0 to define the transparency of the image
  • messagex: horizontal position of game messages (when a state is saved for example)
  • messagey: vertical position of game messages (when a state is saved for example)
{
 "width":1920,
 "height":1080,
 "top":2,
 "left":241,
 "bottom":1,
 "right":243,
 "opacity":0.7000000,
 "messagex":0.220000,
 "messagey":0.120000
}
  • decoration.txt
  • Last modified: 10 days ago
  • by atari