The Most Important Changes & Additions
| Kobold2D is now available on github. Note that several convenience features are missing from the github version. It is recommended to use the installer version if you're not an experienced git and Kobold2D user. |
- KKAdBanner implements autorotation of Ad Providers (iAd & AdMob) thanks to Tomohisa. If an ad fails to load it will try to load an ad from the other enabled Ad Provider, thus increasing the chance of an Ad showing up at all. This is particularly important for countries where either iAd or AdMob won't show ads, or if one of the providers is (temporarily) unavailable.
- Added KKPixelMaskSprite for pixel-perfect collision detection.
- Added KKScreenshot for taking screenshots with CCRenderTexture (iOS only).
Minor Improvements & Bug Fixes
- FIX: using CCMenuItem* with blocks crashed when starting app
- FIX: Retina display might not have been initialized correctly even if enabled in config.lua
- FIX: KKInput resets its internal state when changing scenes. This fixes several issues, most notably touches that remained active after scene change even though the finger was lifted.
- FIX: If framerate is low touchBeganThisFrame events did not register on occassion. This happened if it was a fast tap or touch changed to moved state immediately after it began.
- FIX: gesturePanVelocity reported incorrect values and was never reset to 0,0 if touch wasn't moving.
- FIX: AdBanner views could disappear if UIViewController handled autorotation.
- FIX: frequent iAd warnings about "obstructed ads"
- IMP: Chipmunk & Box2 libaries have the "Relax IEEE Compliance" (GCC_FAST_MATH or -ffast-math) build setting enabled to speed up computations.
- IMP: KKGameKitHelper autorotates Game Center views to the current device orientation
- IMP: most KKGameKitHelper @protocol methods are now @optional
- IMP: added JRSwizzle class for internal method swizzling needs
- IMP: added CCDirector frameCount property which keeps track of the number of frames drawn since the app was started.
- IMP: added CCNode convenience method intersectsNode:(CCNode*)other
- IMP: added anyTouchLocation convenience property to KKInput
- IMP: added John Wordsworth's Box2DDebugLayer class to Box2D template project, renders Box2D debug info over existing nodes while still rendering the node's textures.
Libraries updated
- cocos3d 0.6.4
Known Issues
| If you experience "ld file not found" and/or "failed with exit code 1" you should read Why do I get "ld .. failed with exit code 1"? for possible solutions. |
| If you get: file not found libarclite_macosx.a then you are building a 64-Bit App under Snow Leopard with ARC enabled (which is the default). There may also be other build errors on Snow Leopard with Xcode 4.2 and building 64-Bit Mac Apps that are related to ARC. You need to disable Automatic Reference Counting (ARC) in the Build Settings of that project, because you can only build ARC apps for Mac OS X under Lion. |
| KKAdBanner: if you enable ads you should also enable AutorotationType = Autorotation.UIViewController in config.lua so that ads are rotated correctly. |



