Quartz Debug Mac

One thing bugging me with Quartz Debug version 4.0 in Snow Leopard is that the window list which listed all the open windows on the system along with their id, size, and memory consumption statistics is apparently gone. Drag the Quartz Debug program to your Applications or Utilities folder. From Infinite Loop: To enable Quartz 2D Extreme in Tiger without using the Quartz Debug application, open a terminal window and type sudo defaults. Enable HiDPI Resolutions on macOS. Method 2: Quartz Debug Quartz Debug gives you many more features, such as an FPS counter and other visual modifiers. Open the DMG file, and inside the Graphics folder, look for the Quartz debug tool. Once it’s running, go to the Window item on the menu bar and select FrameMeter from the menu. This will add a meter at the bottom left of the screen that will show you the current FPS.

The XQuartz project is an open-source effort to develop a version of the X.Org X Window System that runs on OS X. Together with supporting libraries and applications, it forms the X11.app that Apple shipped with OS X versions 10.5 through 10.7.

Quick Download

DownloadVersionReleasedInfo
XQuartz-2.7.11.dmg2.7.112016-10-29For OS X 10.6.3 or later
X11-2.6.3.dmg2.6.32011-07-20For OS X 10.5.x (final Leopard release)

Important Info for 10.5 Users

OS X Software Updates have included some of the work done by the XQuartz project, but for various reasons, Apple cannot ship the latest and greatest version offered by the XQuartz site. Since the XQuartz X11 package clobbers Apple's X11.app, their software update will clobber the XQuartz X11 package. Because of this, you may experience conflicts after doing a Software Update from Apple. Please re-install the latest XQuartz X11 release for Leopard after installing a system software update to OS X 10.5.x Leopard.

License Info

An XQuartz installation consists of many individual pieces of software which have various licenses. The X.Org software components’ licenses are discussed on theX.Org Foundation Licenses page.The quartz-wm window manager included with the XQuartz distribution uses the Apple Public Source License Version 2.

As you update an app for a high-resolution environment, you’ll need to test it to ensure you get the expected results. Although you’ll want to test the app on high-resolution hardware prior to releasing it, you can emulate a high-resolution display on a standard-resolution display as an intermediate step.

Enable High-Resolution Options on a Standard-Resolution Display

Before you can set the high-resolution options in Quartz Debug, you first need to download it (if you don't already have a copy).

  1. Choose Xcode > Open Developer Tool > More Developer Tools...

    Choosing this item will take you to developer.apple.com.

  2. You should then see the Downloads for Apple Developers webpage.

  3. Download the Graphics Tools for Xcode package, which contains Quartz Debug.

  1. Choose UI Resolution from the Window menu.

  2. Log out and then log in to have the change take effect.

    This updates the Resolutions list in System Preferences.

  3. Open System Preferences > Displays, and choose a resolution that is marked as HiDPI.

Make Sure @2x Images Load on High-Resolution Screens

Quartz Debug Mac

Before releasing your app you’ll want to make sure that @2x images load as expected. Users can configure a system with multiple displays such that one display is high resolution and another is standard resolution. Not only must your app be prepared to run on systems with different screen resolutions, but you need to ensure that your app’s windows work as expected when dragged from one display to another. When a window moves from a standard- to a high-resolution display, the window’s content should update to show the appropriately scaled image.

One way to check whether an image is loading correctly in high resolution is to tint it. You can do this by using the image-tinting option in Quartz Debug. After you turn on image tinting any @2x image that is not correctly sized for high resolution will appear tinted (as shown in the image on the right in Figure 5-1).

Tinting is especially useful for finding graphics resources that might have been overlooked during your upscaling work, as shown in Figure 5-2. Note that the curved ends of the scroll control are tinted, which shows these details still need to be upscaled.

The easiest way to turn on the image-tinting option is from the Tools menu in Quartz Debug v4.2.

You can also access the feature from the command line using Terminal.

Macos Quartz Debug

To turn on the tinting option for all apps for a given user (that is, global domain)
  • Replace -g with that app’s bundle identifier (for example, com.mycompany.myapp):

Troubleshooting

This section addresses some common problems you might encounter as you modify your app for high resolution.

Controls and Other Window Elements Are Truncated or Show Up in Odd Places

Misplaced or truncated drawing almost certainly results from code that assumes a 1:1 relationship between points and pixels. In a high-resolution environment, there is no guarantee that this is the case. You might need to use the functions described in Converting to and from the Backing Store to perform appropriate conversions between points and pixels.

Images Don’t Look as Sharp as They Should

If you supplied standard- and high-resolution versions of images in your app but don’t think the correct version is being loaded, you can check whether it is by using the tinting option in Quartz Debug (see Make Sure @2x Images Load on High-Resolution Screens). If you see a tinted image instead, use tiffutil to check the sizing (see Run the TIFF Utility Command in Terminal). You should also make sure the high-resolution version is named correctly. For example, make sure you use a lowercase x for @2x.

OpenGL Drawing Looks Fuzzy

If OpenGL drawing looks slightly out of focus, make sure that:

  • Your code opts in for getting the best resolution for your OpenGL view (see Enable OpenGL for High-Resolution Drawing).

  • You have not mixed point-based and pixel-based routines (see the example shown in Set Up the Viewport to Support High Resolution).

Objects Are Misaligned

Quartz Debug Download Mac

The solution is to make sure that your drawing aligns on pixel boundaries rather than relying on points. You might also consider using Auto Layout for constraint-based, pixel-precise layout that works well for dynamic window changes. For more details, see Auto Layout Guide.

To adjust the position of an object to fall on exact pixel boundaries
  1. Convert the object’s origin and size values from user space to device space.

  2. Normalize the values to fall on exact pixel boundaries in device space.

    Tip: Avoid using rounding functions on view coordinates, because rounding skips every other pixel and can result in an undesired effect. You can achieve more precise alignment by using the backingAlignedRect:options: method (see Aligning a Rectangle on Pixel Boundaries).

  3. Convert the normalized values back to user space to obtain the coordinates required to achieve the desired pixel boundaries.

Quartz Debug Mac Download



Quartz Debug Mac

Copyright © 2012 Apple Inc. All Rights Reserved. Terms of Use | Privacy Policy | Updated: 2012-09-19