Jump To:
Leopard Reference Library
Mac OS X offers game developers state-of-the-art audio, 2D and 3D graphics, networking capabilities, and human interface features. With OpenGL, Quartz, Velocity Engine, and the Mac OS X development tools and frameworks, Apple provides developers with everything they need to build or port exciting and compelling games.

A guided introduction and learning path to developing games for Mac OS X.   C and Objective-C API references organized by framework.
Document Descriptions
On Off
Display

Sorted by
Title
Sort by
Topic
Sort by
Resource Type
Sort by
Date
2D Graphics Release Notes for Mac OS X v10.5 (HTML)
Describes the changes and issues related to Core Image and Quartz 2D in Mac OS X v10.5.
Graphics & Imaging Release Notes 2008-04-08
Accessing HTTPS Proxy Settings (HTML) (日本語 HTML)
QA1234: Describes how to programatically access Secure Web Proxy information.
Networking Technical Q&As 2003-02-19
AGL Changes for Mac OS X Leopard (v. 10.5) (HTML)
QA1523: This Q&A describes the new and deprecated APIs for Apple OpenGL (AGL)
Graphics & Imaging Technical Q&As 2008-01-04
aglClipBufferRect (HTML) (DMG) (ZIP)
Shows the use of clip regions and buffer rects in AGL.
Graphics & Imaging Sample Code 2003-01-14
AGLSurfaceTexture (HTML) (DMG) (ZIP)
Example of render to texture/texture from surface using aglSurfaceTexture.
Graphics & Imaging Sample Code 2003-07-07
Animating the frame of a CALayer. (HTML)
QA1620: Explains how the frame property of a layer interacts with animations.
Graphics & Imaging Technical Q&As 2008-10-24
Animation Overview (HTML) (PDF)
Describes the animation facilities provided by Mac OS X.
Carbon, Cocoa, Graphics & Imaging Guides 2008-10-15
Avoiding Pauses When Looping Audio files with QuickTime (HTML)
QA1371: Demonstrates how to avoid pauses when looping audio files with QuickTime
Audio Technical Q&As 2004-09-08
BlitVBL (HTML) (DMG) (ZIP)
Shows how to have Mac OS X try its best to sync to the VBL for you.
Performance Sample Code 2003-01-14
BoingX (HTML) (DMG) (ZIP)
Shows off using Quartz Extreme to provide borderless OpenGL content on the desktop.
Graphics & Imaging Sample Code 2007-11-06
Bonjour Overview (HTML) (PDF)
Explains how to use Apple's zero-configuration networking architecture in Cocoa applications.
Networking Guides 2006-05-23
Building WingNuts in Xcode with OpenGL: Freeverse Creates a Great Mac-only Game (HTML)
Read how Freeverse created their award-winning Mac-only game, WingNuts 2, using Core Image, Interface Builder, Xcode, and OpenGL.
Graphics & Imaging Articles 2007-05-15
CALayerEssentials (HTML) (DMG) (ZIP)
Demonstrates the basics of setting up various Core Animation layers
Cocoa, Graphics & Imaging Sample Code 2008-09-30
Carbon Full Screen Conundrums (HTML)
QA1068: Describes the available Mac OS X DrawSprocket services.
Carbon, Graphics & Imaging Technical Q&As 2001-08-20
Carbon GLSnapshot (HTML) (DMG) (ZIP)
Demonstrates the use of OpenGL with Quicktime to capture OpenGL content.
Graphics & Imaging Sample Code 2003-07-07
CFPrefTopScores (HTML) (DMG) (ZIP)
How to access globally shared (writable) user preferences without requiring authentication.
Carbon, Files & Software Installation, Porting Sample Code 2006-10-09
CGBitmapContextCreate Supported Color Spaces (HTML)
QA1037: Lists the color space and alpha info combinations currently supported by CGBitmapContextCreate.
Carbon, Cocoa, Graphics & Imaging Technical Q&As 2007-07-18
CGGamma (HTML) (DMG) (ZIP)
Shows how to use CGDirectDisplay calls to manipulate display gamma tables.
Graphics & Imaging Sample Code 2003-01-14
Changing the TCP Window Size (HTML)
NW47: Describes how to change the TCP window size in Open Transport.
Carbon, Cocoa, Networking, Performance, Porting Technical Q&As 1997-03-14
CIColor Class Reference (HTML) (PDF)
Describes the class used to manage color values and color spaces for Core Image filters.
Graphics & Imaging Reference 2006-12-05
CIColorTracking (HTML) (DMG) (ZIP)
An Objective-C applicaton that implements a GPU-based technique to find the location of a uniquely colored object in a scene
Graphics & Imaging Sample Code 2008-04-24
CIContext Class Reference (HTML) (PDF)
Describes the class that provides an evaluation context for rendering a Core Image image through Quartz 2D or OpenGL.
Graphics & Imaging Reference 2007-03-16
CIFilter Class Reference (HTML) (PDF)
Describes the class that processes image data and produces a Core Image image as output.
Graphics & Imaging Reference 2007-12-11
CIFilterShape Class Reference (HTML) (PDF)
Describes the class that defines the bounding shape of a filter and the domain of definition of a filter operation.
Graphics & Imaging Reference 2006-12-07
CIImage Class Reference (HTML) (PDF)
Describes the class that represents an immutable Core Image image.
Graphics & Imaging Reference 2007-10-31
CIImageAccumulator Class Reference (HTML) (PDF)
Describes the class that enables feedback-based image processing.
Graphics & Imaging Reference 2007-01-05
CIImageProvider Protocol Reference (HTML) (PDF)
Describes the informal protocol used to supply bitmap data for creating or initializing a Core Image image.
Graphics & Imaging Reference 2006-12-05
CIKernel Class Reference (HTML) (PDF)
Describes the class that operates on individual pixels using a kernel routine.
Graphics & Imaging Reference 2006-12-05
CIPlugIn Class Reference (HTML) (PDF)
Describes the class that is responsible for loading image units.
Graphics & Imaging Reference 2006-12-05
CIPlugInRegistration Protocol Reference (HTML) (PDF)
Describes the protocol used to load Core Image image units.
Graphics & Imaging Reference 2006-12-07
CISampler Class Reference (HTML) (PDF)
Describes the class that retrieves samples of images that are then processed by a Core Image kernel.
Graphics & Imaging Reference 2006-12-07
CIVector Class Reference (HTML) (PDF)
Describes the class used to pass parameter values to Core Image filters.
Graphics & Imaging Reference 2006-12-07
Coalesced Updates (HTML)
TN2133: How to achieve the maxium frame rate in your Mac OS X application
Graphics & Imaging, Performance Technical Notes 2006-01-20
Cocoa OpenGL (HTML) (DMG) (ZIP)
Demonstrates using Cocoa with OpenGL, including window setup and event handling.
Graphics & Imaging Sample Code 2007-10-22
CocoaSpeechSynthesisExample (HTML) (DMG) (ZIP)
Shows how to use the Carbon Speech Synthesis API from within a Mac OS X Cocoa application.
Speech Technologies Sample Code 2007-03-23
Context Sharing Tips (HTML) (日本語 HTML)
QA1248: How to correctly share OpenGL contexts and what the limits on this sharing are.
Carbon, Graphics & Imaging Technical Q&As 2005-02-07
Core Animation properties and Reference Counting (HTML)
QA1565: Describes a discrepancy between the property declarations in Core Animation and the actual behavior.
Cocoa, Graphics & Imaging Technical Q&As 2008-11-24
Core Audio Overview (HTML) (PDF)
Provides an overview of Core Audio and its programming interfaces.
Audio Guides 2007-01-08
Core Image Kernel Language Reference (HTML) (PDF)
Describes the symbols for writing image-processing kernels.
Graphics & Imaging Reference 2008-06-09
Core Image Programming Guide (HTML) (PDF)
Provides an overview and explains how to use and create image filters and image units.
Graphics & Imaging Guides 2008-06-09
Core Image Reference Collection (HTML) (PDF)
Describes the Objective-C API for using and creating filters for image processing.
Graphics & Imaging Reference 2006-12-05
CubePuzzle (HTML) (DMG) (ZIP)
Models a Rubik's Cube using Cocoa and OpenGL
Cocoa Sample Code 2003-04-21
Current GDevice Dependencies (HTML) (日本語 HTML)
QA1115: Describes potential problems with creating windows or ports when the current GDevice isn't the main device.
Carbon, Graphics & Imaging, Porting Technical Q&As 2002-02-13
Debugging Graphics with QuartzDebug (HTML) (日本語 HTML)
QA1236: Explains how to use QuartzDebug to debug graphics issues.
Graphics & Imaging Technical Q&As 2006-01-12
Developing Games on Mac OS X Using Third-Party Game Engines (HTML)
Create your own game using the powerful game engines that run on Mac OS X.
Carbon, Cocoa Articles 2006-06-05
DNS Service Discovery Programming Guide (HTML) (PDF)
Explains how to use DNS Service Discovery in your application.
Networking Guides 2005-11-09
DrawSprocketTestOld (HTML) (DMG) (ZIP)
Deprecated - Demonstrates basic implementations of DrawSprocket Functions.
Carbon, Graphics & Imaging Sample Code 2003-10-14
Driving OpenGL Rendering Loops (HTML)
QA1385: Using Core Video display links (CVDisplayLink) or Cocoa timers (NSTimer) to drive an OpenGL rendering loop
Cocoa, Graphics & Imaging Technical Q&As 2009-05-01
Enabling multi-threaded execution of the OpenGL framework (HTML)
TN2085: OpenGL on Intel-based Macintosh systems can use multi-threading to increase the performance of CPU-bound OpenGL-based applications.
Graphics & Imaging Technical Notes 2006-11-07
Ensuring hardware accelerated rendering for your OpenGL application (HTML)
QA1502: Using the NoRecovery pixel format attribute and how to check whether vertex and fragment processing is executed on the GPU or CPU
Graphics & Imaging Technical Q&As 2007-07-18
Force Feedback Framework Reference (HTML)
Describes the public interfaces to the Force Feedback implementation in Mac OS X, including support for plug-ins.
Human Interface Device & Force Feedback Reference 2008-04-08
GeekGameBoard (HTML) (DMG) (ZIP)
Shows how to use Core Animation for the user interface of a board or card game.
Cocoa, Graphics & Imaging Sample Code 2007-12-19
GetMACAddressSample (HTML) (DMG) (ZIP)
Demonstrates how to retrieve the MAC address for each Ethernet interface from the Mac OS X I/O Registry.
Networking Sample Code 2003-01-14
GetPrimaryMACAddress (HTML) (DMG) (ZIP)
Demonstrates retrieving the MAC address of the built-in Ethernet controller. Useful for uniquely identifying a Macintosh system.
Networking Sample Code 2005-10-27
GetProcAdress and OpenGL Entry Points (HTML) (日本語 HTML)
QA1188: Technique for finding function pointers for OpenGL entry points in Cocoa and Carbon
Carbon, Graphics & Imaging Technical Q&As 2002-11-25
GetSetOptions (HTML) (DMG) (ZIP)
Demonstrates a variety of uses of Open Transport's option management routines.
Networking Sample Code 2003-01-14
Getting a Packet Trace (HTML) (日本語 HTML)
QA1176: Lists tools available for looking at the network packets on the wire.
Networking Technical Q&As 2008-06-03
Getting the pixel data from a CGImage object (HTML)
QA1509: Describes how to access the pixel data of a CGImage object
Carbon, Cocoa, Graphics & Imaging Technical Q&As 2008-08-27
GLSLShowpiece (HTML) (DMG) (ZIP)
GLSLShowpiece demonstrates several Vertex and Fragment shaders
Graphics & Imaging Sample Code 2006-07-17
GlyphaIVOld (HTML) (DMG) (ZIP)
Deprecated - A basic game implementation in the spirit of Joust meant as demonstation of Sprocket usage.
Carbon, Graphics & Imaging Sample Code 2003-10-14
HID Calibrator (HTML) (DMG) (ZIP)
Human Interface Device Manager Calibrator sample
Human Interface Device & Force Feedback, Porting Sample Code 2008-05-07
HID Config Save (HTML) (DMG) (ZIP)
Human Interface Device Manager Configuration sample
Carbon, Human Interface Device & Force Feedback, Porting Sample Code 2008-05-07
HID Explorer (HTML) (DMG) (ZIP)
Human Interface Device Manager Explorer
Human Interface Device & Force Feedback, Porting Sample Code 2008-05-07
HID LED test tool (HTML) (DMG) (ZIP)
HID Manager sample project that shows how to set and clear keyboard LEDs.
Human Interface Device & Force Feedback, Porting Sample Code 2008-07-25
HID Manager Basics (HTML) (DMG) (ZIP)
Shows basic use of HID Manager for Mac OS X: including device discovery, queues and polling elements.
Human Interface Device & Force Feedback Sample Code 2003-07-10
HID Manager Event Data Underruns (HTML)
QA1038: Explains how to correctly handle HID Manager event queue data underruns.
Human Interface Device & Force Feedback, Performance Technical Q&As 2001-06-13
HID Utilities Source (HTML) (DMG) (ZIP)
Shows a high level abstract library for the HID manager.
Human Interface Device & Force Feedback Sample Code 2003-10-06
How can I programmatically determine the DPI of the current video mode? (HTML) (日本語 HTML)
QA1217: Describes how to compute the DPI for a given display in a given mode using Core Graphics.
Carbon, Cocoa, Graphics & Imaging Technical Q&As 2002-12-02
How do I determine how much VRAM is available on my video card? (HTML)
QA1168: Using Core Graphics and IOKit to find the physical size of VRAM on installed hardware.
Cocoa, Graphics & Imaging Technical Q&As 2004-10-11
How do I tell if a particular display is being hardware accelerated by Quartz Extreme? (HTML) (日本語 HTML)
QA1218: Describes how to use CGDisplayUsesOpenGLAcceleration to see if a display is accelerated or not.
Carbon, Cocoa, Graphics & Imaging Technical Q&As 2002-12-04
How do I use QuickDraw with CGDirectDisplay? (HTML)
QA1011: Explains how to draw to a CGDirectDisplay-captured display using QuickDraw.
Carbon, Graphics & Imaging Technical Q&As 2001-04-11
Image Unit Tutorial (HTML) (PDF)
Describes how to write image processing kernels and package them for distribution.
Graphics & Imaging Guides 2009-05-06
ImageClient (HTML) (DMG) (ZIP)
Demonstrates how to use CFNetwork for synchronous and asynchronous operations, network diagnostics, proxy navigation, and authentication.
Networking Sample Code 2005-06-01
Incorrect Inside Macintosh Volume V documentation (HTML)
Deprecated - QD15: Identifies incorrect documentation in Inside Macintosh Volume V regarding the formats of PnPixPat and BkPixPat opcodes.
Carbon Technical Q&As 1995-09-15
Installer JavaScript Reference (HTML) (PDF)
Describes the JavaScript object model used in distribution definition files.
Files & Software Installation Reference 2008-12-16
InstallerPluginSample (HTML) (DMG) (ZIP)
Provides instructions for extending software installation using custom plugins
Files & Software Installation Sample Code 2006-08-30
Installing Your Application on Mac OS X: Guidelines for Developers (HTML)
Get tips for making the installation process easier for you and your customers.
Files & Software Installation Articles 2005-06-13
Internet Connect Speed (HTML) (日本語 HTML)
QA1165: Describes how to get the modem connection speed from the System Configuration framework dynamic store.
Networking Technical Q&As 2003-03-26
Is ColorSync thread safe? (HTML) (日本語 HTML)
QA1261: Discusses ColorSync thread-safety issues.
Graphics & Imaging Technical Q&As 2003-04-17
Leopard Technology Series for Developers: Graphics & Media Overview (HTML)
Describes Leopard's graphics and media capabilities.
Graphics & Imaging Articles 2007-12-11
ListMania (HTML) (DMG) (ZIP)
Demonstrates a variety of techniques for using Open Transport's list utility routines.
Networking Sample Code 2003-01-14
MassiveImage (HTML) (DMG) (ZIP)
Shows how to use a CGDataProvider to save a very large image with Image IO
Carbon, Cocoa, Graphics & Imaging Sample Code 2007-09-27
Mode (HTML) (DMG) (ZIP)
Shows how to enumerate displays and list the available modes for each display.
Graphics & Imaging Sample Code 2003-01-14
ModeWhacker (HTML) (DMG) (ZIP)
Shows how to enumerate, select, capture, manipulate, and release displays using the CGDirectDisplay API.
Graphics & Imaging Sample Code 2003-01-14
New HID Manager APIs for Mac OS X version 10.5 (HTML)
TN2187: Mac OS X version 10.5 introduces new APIs for the HID Manager.
Carbon, Human Interface Device & Force Feedback, Porting Technical Notes 2008-01-23
NoCopyReceives (HTML) (DMG) (ZIP)
Demonstrates using no-copy receives under Open Transport.
Networking Sample Code 2003-01-14
NSAnimation Class Reference (HTML) (PDF)
Describes the behavior of an animation.
Cocoa Reference 2007-10-31
NSGLImage (HTML) (DMG) (ZIP)
Deprecated - Demonstrates how to texture in OpenGL with an NSImage and/or NSBitmapImageRep
Cocoa, Graphics & Imaging Sample Code 2004-12-01
NSHost Class Reference (HTML) (PDF)
Describes a representation of a network host.
Networking Reference 2007-03-24
Open Transport Libraries (HTML) (日本語 HTML)
NW18: Lists the Open Transport libraries and what to link with for PowerPC and 68K.
Carbon Technical Q&As 2000-11-03
OpenALExample (HTML) (DMG) (ZIP)
Basic example showing OpenAL usage in a 2D OpenGL environment
Audio, Cocoa Sample Code 2005-06-01
OpenGL Filter Basics Cocoa (HTML) (DMG) (ZIP)
How to use Objective-C and MVC design patterns in installing and utilizing filters in an OpenGL rendering pipeline
Cocoa, Graphics & Imaging, Performance Sample Code 2008-02-06
OpenGL Programming Guide for Mac OS X (HTML) (PDF)
Explains how to use the Apple implementation of OpenGL to create 3D graphics for Cocoa and Carbon applications.
Graphics & Imaging Guides 2008-06-09
OpenGL Release Highlights - Mac OS X 10.3 Panther (HTML)
TN2131: Contains a list of bugs along with a short description on a release-by-release basis
Graphics & Imaging Technical Notes 2005-02-04
OTScheduleDeferredTask When Task Running (HTML) (日本語 HTML)
NW52: Describes what happens when you use OTScheduleDefferedTask to schedule a task that is running.
Performance Technical Q&As 1997-10-13
Out of This GWorld (HTML) (DMG) (ZIP)
Deprecated - Demonstrates the use of offscreen GWorlds and palette animation to simulate animation.
Graphics & Imaging Sample Code 2003-03-12
Performance Overview (HTML) (PDF)
Introduces the factors that determine performance.
Performance Guides 2006-10-03
Preserving embedded ICC profiles when using QuickTime Graphics Importer/Exporters (HTML) (日本語 HTML)
QA1145: Shows how to preserve the embedded ICC profile when using the QuickTime Graphics Importer/Exporter routines
Graphics & Imaging Technical Q&As 2002-09-04
QDFlushPortBuffer (HTML) (日本語 HTML)
QD65: Describes a possible solution for window update problems under Carbon.
Graphics & Imaging, Porting Technical Q&As 2000-11-08
Quartz 2D Programming Guide (HTML) (PDF)
Explains how to use Quartz 2D. Includes illustrations and sample code.
Graphics & Imaging Guides 2007-12-11