Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/pkluz/PKCoreTechniques

The code for my CoreGraphics+CoreAnimation talk, held during the 2012 iOS Game Design Seminar at the Technical University Munich.
https://github.com/pkluz/PKCoreTechniques

Last synced: 8 days ago
JSON representation

The code for my CoreGraphics+CoreAnimation talk, held during the 2012 iOS Game Design Seminar at the Technical University Munich.

Awesome Lists containing this project

README

        

# PKCoreTechniques
=======
**Core Techniques** is the result of a presentation I held at the **Technical University of Munich** during the 'iOS Game Design Seminar 2012'. It serves as a hands-on introduction to the fundamental concepts of **CoreGraphics and CoreAnimation** on the iOS and OS X platforms.

## Structure
=======
The projects structure is fairly straight-forward and there's two possible points of entry. You can either take a look at the *CoreGraphics+AnimationForSuperheroes.pdf* document and check out a brief introduction into the main concepts of CoreGraphics and CoreAnimation or you can jump right into the code by opening the 'CoreGraphicsSeminar.xcworkspace' in the 'src' folder. There's two projects in the workspace, that you're very welcome to both improve and learn from.

## CoreTechniques
=======

[![](http://dl.dropbox.com/u/8960813/github/reference2app.png)](http://dl.dropbox.com/u/8960813/github/reference2app.png)
**Core Techniques** is a collection of various examples on how the most common techniques are implemented and used. Those include:

- Color Fill
- Gradient Fill (Linear and Radial)
- Simple Paths
- Bezier Curves
- Clipping (Standard and Even-Odd)
- Creating custom-drawn Buttons
- Simple Translations
- Translations with Hit-Test Triggers
- A very primitive 'CoverFlow' with 3D Transformations in CoreAnimation.

## CoreBirdy
=======
[![](http://dl.dropbox.com/u/8960813/github/reference1app.png)](http://dl.dropbox.com/u/8960813/github/reference1app.png)
CoreBirdy was primarily made to test the performance of slightly more complex drawing on the iOS devices and the results were fairly interesting. While in fact the drawing performance in Quartz _is_ slower than using an image in this case, it's still _very_ good (and resolution independent!). (Note: The Bezier curves are of fairly high degree! >20).

Please note that **CoreBirdy** is intended as a proof-of-concept and should be regarded as such.

License
=======
Copyright (c) 2011, Philip Kluz ([email protected])
All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

* Neither the name of Philip Kluz, 'zuui.org' nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PHILIP KLUZ BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Contact
=======

If for whatever reason you feel the need to get in touch with me, feel free to message me at: [email protected] or follow me on [Twitter](http://twitter.com/pkluz "Twitter").