---
title: Introduction to Quartz Composer Custom Patch Programming Guide
framework: graphicsimaging
role: article
path: apple-archive/documentation/GraphicsImaging/Conceptual/QuartzComposer_Patch_PlugIn_ProgGuide/Introduction
---

# Introduction to Quartz Composer Custom Patch Programming Guide

Describes how to create custom patches for distribution.

## Organization of This Document

This document is organized into the following chapters:

- [The Basics of Custom Patches](../plugin_1/plugin_1.html#//apple_ref/doc/uid/TP40004787-CH3-SW1) describes how the patches that appear in Quartz Composer relate to the code that generates a custom patch. It provides an overview of the tasks needed to create a custom patch and package it as a plug-in. It also describes the Xcode templates that you can use to write custom patches. - [Writing Processor Patches](../WritingProcessorPatches/WritingProcessorPatches.html#//apple_ref/doc/uid/TP40004787-CH4-SW1) shows how to write three patches that process data—one that processes a string, another that converts a numeric value to a color, and another that shows how to configure a parameter that can’t be represented by one of the standard port data types. - [Writing Image Processing Patches](../qc_image_proc/qc_image_proc.html#//apple_ref/doc/uid/TP40004787-CH7-SW1) describes how to use input and output image protocols to create a patch that produces an image by operating on two input images. - [Writing Consumer Patches](../WritingConsumerPatches/WritingConsumerPatches.html#//apple_ref/doc/uid/TP40004787-CH5-SW1) discusses how to use OpenGL in a custom patch and provides instructions for writing a patch that renders a quad that you can animate.

## See Also

The following resources are valuable to anyone writing a custom patch and packaging it as a Quartz Composer plug-in:

- Several of the sample code projects in `/Developer/Examples/Quartz Composer/Plugins` are custom patch projects. - *[Quartz Composer User Guide](../../QuartzComposerUserGuide/qc_intro/qc_intro.html#//apple_ref/doc/uid/TP40005381)* describes the development tool and how to use it to create compositions. - *[Quartz Composer Programming Guide](../../QuartzComposer/qc_intro/qc_intro.html#//apple_ref/doc/uid/TP40001357)* shows how to perform programming tasks using the Quartz Composer framework. - *Quartz Composer Reference Collection* describes all the classes and protocols in the Quartz Composer API. You’ll need to refer to this documentation as you write Quartz Composer custom patches. - *[Key-Value Coding Programming Guide](../../../../Cocoa/Conceptual/KeyValueCoding/index.html#//apple_ref/doc/uid/10000107i)* contains valuable information for anyone who is unfamiliar this mechanism for getting and setting values.

[Next](../plugin_1/plugin_1.html)

Copyright © 2010 Apple Inc. All Rights Reserved. [Terms of Use](http://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](http://www.apple.com/privacy/) | Updated: 2010-03-24
