askvity

How to Make Pixel Art Look Good in Unity?

Published in Pixel Art in Unity 5 mins read

To make pixel art look good in Unity, you need to correctly configure texture import settings and camera properties to ensure crisp, non-blurry visuals.

Achieving sharp pixel art in Unity primarily involves telling the engine not to smooth or compress your textures in ways that are detrimental to pixel fidelity and setting up your camera to match your desired pixel scale.

Essential Unity Settings for Pixel Art

Properly importing your pixel art textures is the first critical step. Incorrect settings can easily lead to blurry or distorted pixels.

1. Texture Import Settings

When you import a texture (like a .png file) into Unity, select the texture file in the Project window and look at the Inspector window. Here are the key settings to adjust:

  • Texture Type: Set this to Sprite (2D and UI). This is the default for sprite sheets and individual sprite assets.
  • Sprite Mode:
    • Single: For individual sprites.
    • Multiple: For sprite sheets containing animations or multiple elements. Use the Sprite Editor to define individual sprites.
  • Pixels Per Unit (PPU): This is crucial. It defines how many pixels in your sprite correspond to one unit in the Unity world. If you want your sprites to appear at their native pixel scale relative to your world, this value should match the average "size" of your sprites. A common value is 16, 32, or 64, corresponding to the height/width of your typical sprite character or tile.
  • Filter Mode: Set this to Point (no filter). This is essential. Bilinear and Trilinear filtering modes blend neighboring pixels to smooth textures, which is the opposite of what you want for crisp pixel art.
  • Compression: Set this to None. Compression can introduce artifacts or lossiness that degrade pixel quality. While it increases file size, for pixel art, quality is paramount.
  • Max Size: This setting determines the maximum resolution the texture will be scaled down to during import.
    • For pixel art textures that are smaller than typical high-resolution textures (e.g., less than 2K), their native resolution is often fine.
    • As referenced, if you are using larger textures (e.g., 2K or more), you should set the Max Size to a larger value like 4096 (4k) or greater. This prevents Unity from drastically downscaling the texture and potentially causing blurry results. Ensure this size is at least equal to your texture's native resolution if possible.
  • Aniso Level: Set this to 0. Anisotropic filtering is for perspective texture views and is not needed for 2D pixel art.

Example Settings Summary:

Setting Recommended Value Notes
Texture Type Sprite (2D and UI) Standard for sprites.
Pixels Per Unit Match your art's scale e.g., 32 if your character is 32 pixels tall.
Filter Mode Point (no filter) Crucial for sharp pixels.
Compression None Avoids artifacts.
Max Size >= Native Resolution Use 4K+ for larger textures to prevent blur.
Aniso Level 0 Not needed for 2D.

2. Camera Setup for Pixel Perfection

Your camera needs to be configured to display the pixels at a consistent scale without distortion.

  • Projection: Use Orthographic. This prevents perspective distortion, which is unsuitable for typical pixel art.

  • Size: This setting determines the half-height of your camera's view in Unity units. To achieve pixel-perfect rendering, you need to relate the camera's size to your Pixels Per Unit (PPU) setting and your desired screen resolution.

    A common technique for pixel-perfect rendering is to calculate the camera size based on the target resolution and PPU. The formula is often:

    Camera Size = (Target Screen Height in Pixels / 2) / Pixels Per Unit

    For example, if your target height is 216 pixels and your PPU is 16:
    Camera Size = (216 / 2) / 16 = 108 / 16 = 6.75

    Setting the camera size this way ensures that a certain number of pixels in your game world align perfectly with the pixels on the screen at your target resolution.

3. Other Considerations

  • Native Art Resolution: Design your pixel art at a resolution that scales cleanly (e.g., resolutions that are multiples of your base sprite size).
  • Pixel Perfect Camera (URP): If using the Universal Render Pipeline (URP), Unity provides a dedicated "Pixel Perfect Camera" component that automates many of the camera calculations and helps maintain a consistent pixel grid regardless of screen resolution. This is highly recommended for pixel art projects in URP.
  • Sprite Atlases: While not strictly about "look good," using Sprite Atlases can improve performance by batching draw calls. Ensure the texture settings (especially Filter Mode and Compression) on your Sprite Atlas are correctly configured for pixel art.

By carefully setting these properties, particularly the Filter Mode to Point and the Max Size appropriately for your texture resolutions (including using larger sizes for larger textures to avoid blurry downscaling, as noted in the reference), you can ensure your pixel art appears as sharp and clean in Unity as it was designed.

Related Articles