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

Sort by
Title
Sorted by
Topic
Sort by
Resource Type
Sort by
Date
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.
Graphics & Imaging Sample Code 2003-10-14
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.
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.
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.
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.
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
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
MassiveImage (HTML) (DMG) (ZIP)
Shows how to use a CGDataProvider to save a very large image with Image IO
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
NSGLImage (HTML) (DMG) (ZIP)
Deprecated - Demonstrates how to texture in OpenGL with an NSImage and/or NSBitmapImageRep
Graphics & Imaging Sample Code 2004-12-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
Graphics & Imaging 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
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
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 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
Quartz 2D Reference Collection (HTML) (PDF)
Describes the C API for the native two-dimensional drawing engine in Mac OS X.
Graphics & Imaging Reference 2006-12-18
Quartz Composer Texture (HTML) (DMG) (ZIP)
Shows how to use a Quartz Composer composition as an OpenGL texture.
Graphics & Imaging Sample Code 2005-06-01
Real world profiling with the OpenGL Profiler (HTML)
TN2178: This document describes how to use OpenGL Profiler, a very powerful tool for your OpenGL development.
Graphics & Imaging Technical Notes 2008-09-16
Requirements for Quartz GL (HTML)
QA1536: Describes the requirements for enabling Quartz GL.
Graphics & Imaging Technical Q&As 2008-08-08
Resolution Independent UI Release Notes (HTML)
Graphics & Imaging Release Notes 2005-04-29
Simple DrawSprocket (HTML) (DMG) (ZIP)
Deprecated - Simple use of DrawSprocket to set screen resolution and size.
Graphics & Imaging Sample Code 2003-07-22
Synchronizing OpenGL rendering updates to the vertical refresh of the display (HTML)
QA1521: How to avoid tearing by synchronizing your rendering to the display VBL
Graphics & Imaging Technical Q&As 2007-07-16
TexturePerformanceDemo (HTML) (DMG) (ZIP)
OpenGL texture optimization demo for WWDC Session 214
Graphics & Imaging Sample Code 2005-06-01
Tiger Developer Overview Series: Developing with Core Image (HTML)
Learn how Core Image can help you take your graphics development to the next level.
Graphics & Imaging Articles 2005-03-09
Updating OpenGL Contexts (HTML) (日本語 HTML)
QA1209: When and why to update an OpenGL context in response to system and user actions.
Graphics & Imaging Technical Q&As 2003-06-19
Using Clip Region and Buffer Rectangles with OpenGL Carbon (HTML) (日本語 HTML)
QA1222: Shows the basics of using buffer rectangles and clip regions with AGL.
Graphics & Imaging Technical Q&As 2002-12-19
Using Interface Builder's NSOpenGLView or Custom View objects for an OpenGL application (HTML)
QA1167: Describes usage cases for both NSOpenGLViews and Custom Views for Cocoa OpenGL applications
Graphics & Imaging Technical Q&As 2004-10-28
VertexPerformanceDemo (HTML) (DMG) (ZIP)
Vertex optimization demo for WWDC Session 214
Graphics & Imaging Sample Code 2005-06-01
VideoHardwareInfo (HTML) (DMG) (ZIP)
Query VRAM, Quartz Extreme support, OpenGL extensions and renderer, GLSL version and support.
Graphics & Imaging Sample Code 2007-05-14
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
HID Calibrator (HTML) (DMG) (ZIP)
Human Interface Device Manager Calibrator sample
Human Interface Device & Force Feedback Sample Code 2008-05-07
HID Config Save (HTML) (DMG) (ZIP)
Human Interface Device Manager Configuration sample
Human Interface Device & Force Feedback Sample Code 2008-05-07
HID Explorer (HTML) (DMG) (ZIP)
Human Interface Device Manager Explorer
Human Interface Device & Force Feedback 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 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 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
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.
Human Interface Device & Force Feedback Technical Notes 2008-01-23
Retain Counts of io_object_t Objects in IOKit.framework (HTML) (日本語 HTML)
QA1195: Distinguishes between the retain counts of an I/O Kit kernel object and its io_object_t user space proxy.
Human Interface Device & Force Feedback Technical Q&As 2008-09-24
SetMouseAcclSample (HTML) (DMG) (ZIP)
Find HID System Manager and get/set cursor acceleration
Human Interface Device & Force Feedback Sample Code 2006-11-28
Accessing HTTPS Proxy Settings (HTML) (日本語 HTML)
QA1234: Describes how to programatically access Secure Web Proxy information.
Networking Technical Q&As 2003-02-19
Bonjour Overview (HTML) (PDF)
Explains how to use Apple's zero-configuration networking architecture in Cocoa applications.
Networking Guides 2006-05-23
Changing the TCP Window Size (HTML)
NW47: Describes how to change the TCP window size in Open Transport.
Networking Technical Q&As 1997-03-14
DNS Service Discovery Programming Guide (HTML) (PDF)
Explains how to use DNS Service Discovery in your application.
Networking Guides 2005-11-09
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
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
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
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
ListMania (HTML) (DMG) (ZIP)
Demonstrates a variety of techniques for using Open Transport's list utility routines.
Networking Sample Code 2003-01-14
NoCopyReceives (HTML) (DMG) (ZIP)
Demonstrates using no-copy receives under Open Transport.
Networking Sample Code 2003-01-14
NSHost Class Reference (HTML) (PDF)
Describes a representation of a network host.
Networking Reference 2007-03-24
SimplePing (HTML) (DMG) (ZIP)
Sample provides simple API to programatically ping a remote host without admin privileges
Networking Sample Code 2003-10-27
T_DATA_REQ vs M_DATA TPI Message Blocks (HTML) (日本語 HTML)
NW42: Explains why OT passes data to a TPI module using M_DATA message blocks instead of M_PROTO+T_DATA_REQ.
Networking Technical Q&As 1996-10-25
TCP/IP Option Sizes (HTML) (日本語 HTML)
NW62: Enumerates the TCP/IP options and their sizes for Open Transport.
Networking Technical Q&As 1999-04-26
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
Changing the TCP Window Size (HTML)
NW47: Describes how to change the TCP window size in Open Transport.
Performance Technical Q&As 1997-03-14
Coalesced Updates (HTML)
TN2133: How to achieve the maxium frame rate in your Mac OS X application
Performance Technical Notes 2006-01-20
HID Manager Event Data Underruns (HTML)
QA1038: Explains how to correctly handle HID Manager event queue data underruns.
Performance Technical Q&As 2001-06-13
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
Performance Sample Code 2008-02-06
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
Performance Overview (HTML) (PDF)
Introduces the factors that determine performance.
Performance Guides 2006-10-03
Real world profiling with the OpenGL Profiler (HTML)
TN2178: This document describes how to use OpenGL Profiler, a very powerful tool for your OpenGL development.
Performance Technical Notes 2008-09-16
Requirements for Quartz GL (HTML)
QA1536: Describes the requirements for enabling Quartz GL.
Performance Technical Q&As 2008-08-08
CFPrefTopScores (HTML) (DMG) (ZIP)
How to access globally shared (writable) user preferences without requiring authentication.
Porting Sample Code 2006-10-09
Changing the TCP Window Size (HTML)
NW47: Describes how to change the TCP window size in Open Transport.
Porting Technical Q&As 1997-03-14
Current GDevice Dependencies (HTML) (日本語 HTML)
QA1115: Describes potential problems with creating windows or ports when the current GDevice isn't the main device.
Porting Technical Q&As 2002-02-13
HID Calibrator (HTML) (DMG) (ZIP)
Human Interface Device Manager Calibrator sample
Porting Sample Code 2008-05-07
HID Config Save (HTML) (DMG) (ZIP)
Human Interface Device Manager Configuration sample
Porting Sample Code 2008-05-07
HID Explorer (HTML) (DMG) (ZIP)
Human Interface Device Manager Explorer
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.
Porting Sample Code 2008-07-25
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.
Porting Technical Notes 2008-01-23
QDFlushPortBuffer (HTML) (日本語 HTML)
QD65: Describes a possible solution for window update problems under Carbon.
Porting Technical Q&As 2000-11-08
Setting environment variables for user processes (HTML)
QA1067: Tells how to set environment variables for user processes.
Porting Technical Q&As 2001-10-25
QuickTime Overview (HTML) (PDF)
Introduces the main concepts and services of QuickTime.
QuickTime Guides 2005-08-11
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
SimpleSpeechRecExample (HTML) (DMG) (ZIP)
Demonstrates how to use the Speech Recognition Manager in a simple application.
Speech Technologies Sample Code 2003-03-26