Image Best Practices for Roll20
From Roll20 Wiki
This is a rundown of several image practices that’ll ensure the optimal playing experience. Following this guideline should cut down on image lag, make it easier to use images on the tabletop, and should ensure that your images are clear and readable.
|Note: Are you a Marketplace Creator? Review our Creating Marketplace Assets wiki for image guidelines on providing the best experience for the end-user.|
Web-Friendly vs. Print Images
If you’re playing from a commercial adventure pack, there’s a high chance you’re working from a PDF file which is often published with the intended purpose of being printed out later by the user. In order for graphics to be readable and crisp for print, the image resolution - the DPI (Dots per inch) has to be kept rather high. The standard minimum resolution for a printed image is roughly 300 DPI. The higher the DPI, the larger the image’s file size is and the harder a processor has to work to display the image. The graphics contained within a PDF such as maps, character portraits and handouts aren’t designed for web, they’re designed for print. We recommend that they shouldn’t be dragged directly from a PDF file and into a Roll20 Game.
Image resolution is meaningless to how an image displays on the screen. The deciding factor of how an image displays on screen is determined by the dimensions of the image. A 500 pixel high by 300 pixel wide image will display on screen as 500 pixels by 300 pixels regardless if it’s 75 DPI, 200 DPI, 600 DPI and so on. When you’re working with images over the internet, the higher the DPI means there’s more needless data that needs to be transferred which will slow your game down.
If you want images to run smoothly in Roll20, keep image resolution low. The standard for web has been 72/75 DPI since the dawn of graphical web sites. Anywhere between the 70-150 DPI range should be adequate for your game images.
The three available image file types that can be imported and used in Roll20 are JPG, GIF and PNG. Below is a chart comparing the file formats against each other:
|File Type||Transparency Availability||Translucency Availability||File Size||File Type Pros||File Type Cons|
|JPG||No||No||Average||Smooth gradients, small file size, preferred file type in Roll20||No transparency options, quality can suffer when heavily compressed|
|GIF||Yes||No||Smallest||Palette swatch control, great for pixel art||Poor quality with gradients, not advised for realistic images, animated gifs will not animate in Roll20|
|PNG||Yes||Yes||Largest||Lossless compression - high quality images||File size inflates when using extensive alpha channel work, large files can use up a lot of system resources. Does everything except animations that a GIF can do, plus more. Ideal format for solid drawings, images with large swaths of exactly the same color.|
If you have graphics that don’t require any transparency or translucency, stick with JPG files. The GIF file type is handy if you want just a simple aliased cutout image for token objects. PNGs can also work for token objects or images requiring transparency. As PNGs are more flexible than GIFs, sometimes they will have a larger file size for what looks to the eye like the same image. If your software controls it, you may be able to change your image from "full color" or "rgb" to "palette" or "indexed". The latter only has a limited number (usually 256) of colors, and is the only format that GIF supports. This is why GIF files are smaller; PNG files using the same type of palette will be roughly the same size as GIF images (or, if anything a bit smaller). Most PNG files you create will be rgb, saving more data per pixel than GIF, and thus being bigger-- but also preserving more image integrity.
|If you need a large translucent map overlay: First, try to dial down the image resolution as low as possible and then try to uniformly scale the image dimensions to a size smaller than you actually need and enlarge it when it’s uploaded in Roll20.|
Working with Screen Space
When a GM hands out documents to their players around a physical table, often the item is written or printed on portrait-oriented paper. On a tablet, a person can simply flip the screen whether a graphic is either Portrait or Landscape. This can’t really be done on a computer monitor. When you want to create handouts or splash screens for use in Roll20, keep in mind that the average user often is working on a widescreen monitor with fixed screen resolution (not to be confused with image resolution). You want to create and plan out handouts and splash screens that’ll fit nicely on the collective user’s screen. Instead of thinking portrait, go with landscape orientation for notes, letters, and pictures or anything else that isn’t going to be a tabletop map.
Regarding screen resolution, get an idea of what your players are using. Are they working at desktop stations? Tablets? Laptops? Find a happy medium of screen resolution and work your graphic sizing around that, so no one will have to play with their zoom settings so they can view your images. Websites like w3schools.com keep yearly tallies of the average screen resolution over the years if you need a generic design guide.
Roll20 Image Dimensions
Here’s specific Roll20 dimensions for certain graphic elements.
|UI Element||Pixel Width||Pixel Height|
|Hex Unit (Vertical)*||~75px||~88px|
|Hex Unit (Horizontal)*||~94px||~81px|
|Max Character Portrait Size||250px||No Height Constraint|
|Game Details Icon||300px||512px|
|Rollable Table Images (Text Chat)||30px||30px|
* The hex grid is mathematically drawn, so the pixel height and width for a single hex unit is an approximation
Token images, due to their small size, are probably best suited for PNG formats (if you want transparency) for best quality. If you’re not relying on a square or hex grid to move tokens about the tabletop, you don’t need to concern yourself about the actual dimensions of the image. If you are using a grid; however, you’ll want to make sure your image has enough transparent padding. The reason for doing this is that an image when dropped onto a gridded tabletop will warp the dimensions of the image to best sit inside a single grid unit. This process might dramatically change the proportions of your image. For instance, if you're using tokens that fill a 1 x 1, 2 x 2 or 3 x 3 unit space, you'll want to make sure that the final dimensions of the image are the same for both height and width. If you have an oblong token, you'll want to make sure that the final dimension's of either the width or height is exactly double or perhaps triple of the other.
Troubleshooting Image Problems
“Why does is it taking Roll20 forever to zoom or pan across a map?"
“When I try to zoom in past 100%, my map just disappears.”
“Images are taking forever to appear for some or all of my players.”
This is normally due to file size of any given image in a game. Check the file size of the images you’re using for your game. If any image is over a megabyte in size, we’d recommend checking its image resolution and decrease it in an image editing software package. Also, make sure you’re using the right file type to minimize file size. Only use PNGs when you need transparencies*.
* Unless you are using monochrome PNGs, then file size / bandwidth performance rocks. PNG is the smallest possible file format using GIMP & 1 bit color depth. A 7000x7000 empty map is 7k as PNG, 32k as GIF, 281kb as JPG. It gets worse after adding actual data. A more practical comparison for an actual map is 92k (png), 206kb (gif), 729kb(jpg). For my AD&D 3.5 game, I plan image size around the 70x70 pixel unit square & size my maps to multiples thereof. After completing the map, I convert it to 1-bit indexed color. I create a new page where the units are image_x / 70 * image_y / 70, & drag the picture over. It flies over & I have seen no performance problems yet. Oh yeah, I am using DSL.
“My players are having a hard time reading my hand written note, why does the preview look so small?”
Keep in mind that the limits of a player’s screen when you’re creating handouts. Try to make as much use of the available screen space. This normally means designing items that are wider than they are tall to best fit on a widescreen monitor.
“When I dropped my token art onto the table, the dimensions of the image got really messed up.”
Sounds like your image you are using for your token didn't have enough padding. Make sure you add padding around your Token graphics so that they’re square or are using the appropriate dimensions to place on the grid. For example, a creature that you want to take up a 2x1 grid area, make sure one dimension of the image is padded out to be exactly double of the other. This will ensure that your image’s proportions are retained and you’ll be able to view the image as expected once on the grid.