The code for my CoreGraphics+CoreAnimation talk, held during the 2012 iOS Game Design Seminar at the Technical University Munich.
Switch branches/tags
Nothing to show
Clone or download
Latest commit 24b7b4d Jan 22, 2013

README.mdown

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

=======

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

======= 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 (Philip.Kluz@zuui.org) 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: Philip.Kluz@zuui.org or follow me on Twitter.