joybox 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (393) hide show
  1. checksums.yaml +8 -8
  2. data/Gemfile.lock +1 -1
  3. data/LICENSE +1 -1
  4. data/LICENSE_Box2D +20 -0
  5. data/LICENSE_Cocos2D +24 -0
  6. data/README.md +34 -66
  7. data/Rakefile +2 -3
  8. data/bin/joybox +49 -0
  9. data/command/joybox/USAGE +24 -0
  10. data/command/joybox/templates/layer.erb +11 -0
  11. data/command/joybox/templates/layer_spec.erb +3 -0
  12. data/command/joybox/templates/scene.erb +11 -0
  13. data/command/joybox/templates/scene_spec.erb +3 -0
  14. data/command/joybox/templates/sprite.erb +11 -0
  15. data/command/joybox/templates/sprite_spec.erb +3 -0
  16. data/command/joybox_generate_command.rb +114 -0
  17. data/joybox.gemspec +44 -0
  18. data/lib/joybox/joybox-ios.rb +47 -0
  19. data/lib/joybox/joybox-osx.rb +47 -0
  20. data/lib/joybox/version.rb +1 -1
  21. data/lib/joybox.rb +18 -36
  22. data/{lib/joybox/cocos2d → motion/joybox}/actions/actions.rb +0 -0
  23. data/motion/joybox/actions/animate.rb +22 -0
  24. data/motion/joybox/actions/bezier.rb +33 -0
  25. data/motion/joybox/actions/blink.rb +24 -0
  26. data/motion/joybox/actions/ease.rb +149 -0
  27. data/motion/joybox/actions/fade.rb +38 -0
  28. data/motion/joybox/actions/jump.rb +39 -0
  29. data/{lib/joybox/cocos2d → motion/joybox}/actions/move.rb +4 -2
  30. data/motion/joybox/actions/place.rb +22 -0
  31. data/{lib/joybox/cocos2d → motion/joybox}/actions/repeat.rb +10 -1
  32. data/{lib/joybox/cocos2d → motion/joybox}/actions/rotate.rb +4 -2
  33. data/{lib/joybox/cocos2d → motion/joybox}/actions/scale.rb +4 -2
  34. data/{lib/joybox/cocos2d → motion/joybox}/actions/sequence.rb +3 -3
  35. data/{lib/joybox/cocos2d → motion/joybox}/actions/skew.rb +0 -0
  36. data/motion/joybox/actions/spawn.rb +22 -0
  37. data/motion/joybox/actions/tint.rb +37 -0
  38. data/motion/joybox/animations/animation.rb +60 -0
  39. data/{lib/joybox/cocos2d → motion/joybox}/common/color.rb +12 -1
  40. data/{lib/joybox/cocos2d → motion/joybox}/common/gc_size.rb +4 -4
  41. data/{lib/joybox/cocos2d → motion/joybox}/common/ns_set.rb +0 -0
  42. data/{lib/joybox/cocos2d → motion/joybox}/common/numeric.rb +0 -0
  43. data/{lib/joybox/cocos2d → motion/joybox}/common/screen.rb +4 -4
  44. data/motion/joybox/core/layer.rb +51 -0
  45. data/{lib/joybox/cocos2d → motion/joybox}/core/node.rb +0 -0
  46. data/{lib/joybox/cocos2d → motion/joybox}/core/scene.rb +0 -0
  47. data/{lib/joybox/cocos2d → motion/joybox}/core/sprite.rb +22 -3
  48. data/{lib/joybox/cocos2d → motion/joybox}/core/sprite_batch.rb +0 -0
  49. data/motion/joybox/core/sprite_frame_cache.rb +147 -0
  50. data/{lib/joybox/cocos2d/cocos2d.rb → motion/joybox/joybox.rb} +3 -1
  51. data/{lib/joybox/cocos2d → motion/joybox}/macros.rb +0 -0
  52. data/{lib/joybox/box2d → motion/joybox/physics}/body.rb +44 -17
  53. data/{lib/joybox/cocos2d/core → motion/joybox/physics}/physics_sprite.rb +1 -1
  54. data/motion/joybox/physics/world.rb +79 -0
  55. data/{lib/joybox/cocos2d → motion/joybox}/ui/label.rb +3 -2
  56. data/{lib/joybox/cocos2d → motion/joybox}/ui/menu.rb +0 -0
  57. data/{lib/joybox/cocos2d → motion/joybox}/ui/menu_image.rb +0 -0
  58. data/{lib/joybox/cocos2d → motion/joybox}/ui/menu_label.rb +0 -0
  59. data/{lib/joybox/cocos2d → motion/joybox}/ui/ui.rb +0 -0
  60. data/{lib/joybox/cocos2d → motion/joybox-ios}/common/cg_point.rb +9 -2
  61. data/{lib/joybox/cocos2d → motion/joybox-ios}/common/ui_touch.rb +1 -1
  62. data/{lib/joybox/cocos2d → motion/joybox-ios}/configuration/configuration.rb +0 -0
  63. data/{lib/joybox/cocos2d → motion/joybox-ios}/configuration/file_utils.rb +0 -3
  64. data/{lib/joybox/cocos2d → motion/joybox-ios}/configuration/gl_view.rb +0 -0
  65. data/{lib/joybox/cocos2d → motion/joybox-ios}/configuration/texture_2d.rb +0 -0
  66. data/{lib/joybox/cocos2d → motion/joybox-ios}/core/layer.rb +1 -45
  67. data/{lib/joybox/cocos2d → motion/joybox-ios}/director.rb +6 -6
  68. data/motion/joybox-osx/common/ats_point.rb +48 -0
  69. data/motion/joybox-osx/common/ns_event.rb +8 -0
  70. data/motion/joybox-osx/configuration/configuration.rb +46 -0
  71. data/motion/joybox-osx/configuration/gl_view.rb +57 -0
  72. data/motion/joybox-osx/core/layer.rb +135 -0
  73. data/motion/joybox-osx/director.rb +42 -0
  74. data/template/joybox-ios/files/Rakefile.erb +9 -0
  75. data/{app → template/joybox-ios/files/app}/app_delegate.rb +1 -5
  76. data/{resources → template/joybox-ios/files/resources}/fps_images-hd.png +0 -0
  77. data/{resources → template/joybox-ios/files/resources}/fps_images-ipadhd.png +0 -0
  78. data/{resources → template/joybox-ios/files/resources}/fps_images.png +0 -0
  79. data/template/joybox-ios/files/spec/main_spec.rb.erb +9 -0
  80. data/template/joybox-osx/files/Rakefile.erb +9 -0
  81. data/template/joybox-osx/files/app/app_delegate.rb +23 -0
  82. data/template/joybox-osx/files/app/layers/default_layer.rb +5 -0
  83. data/template/joybox-osx/files/app/menu.rb +51 -0
  84. data/template/joybox-osx/files/resources/Credits.rtf +29 -0
  85. data/template/joybox-osx/files/resources/fps_images-hd.png +0 -0
  86. data/template/joybox-osx/files/resources/fps_images-ipadhd.png +0 -0
  87. data/template/joybox-osx/files/resources/fps_images.png +0 -0
  88. data/template/joybox-osx/files/spec/main_spec.rb.erb +9 -0
  89. data/vendor/{Box2D.framework → vendor-ios/Box2D.framework}/Box2D +0 -0
  90. data/vendor/{Box2D.framework → vendor-ios/Box2D.framework}/Box2D.framework.bridgesupport +47 -37
  91. data/vendor/{Box2D.framework → vendor-ios/Box2D.framework}/Versions/A/Box2D +0 -0
  92. data/vendor/{Box2D.framework → vendor-ios/Box2D.framework}/Versions/A/Headers/Collision/B2DContactListener.h +0 -0
  93. data/vendor/vendor-ios/Box2D.framework/Versions/A/Headers/Collision/Shapes/B2DCircleShape.h +16 -0
  94. data/vendor/{Box2D.framework → vendor-ios/Box2D.framework}/Versions/A/Headers/Collision/Shapes/B2DEdgeShape.h +0 -0
  95. data/vendor/{Box2D.framework → vendor-ios/Box2D.framework}/Versions/A/Headers/Collision/Shapes/B2DPolygonShape.h +0 -0
  96. data/vendor/{Box2D.framework → vendor-ios/Box2D.framework}/Versions/A/Headers/Collision/Shapes/B2DShape.h +0 -0
  97. data/vendor/{Box2D.framework → vendor-ios/Box2D.framework}/Versions/A/Headers/Dynamics/B2DBody.h +6 -6
  98. data/vendor/{Box2D.framework → vendor-ios/Box2D.framework}/Versions/A/Headers/Dynamics/B2DWorld.h +0 -0
  99. data/vendor/{Box2D.framework → vendor-ios/Box2D.framework}/Versions/A/Resources/Box2DConfig.cmake +0 -0
  100. data/vendor/{Box2D.framework → vendor-ios/Box2D.framework}/Versions/A/Resources/CMakeLists.txt +0 -0
  101. data/vendor/vendor-ios/Box2D.framework/Versions/A/Resources/LICENSE +22 -0
  102. data/vendor/vendor-ios/cocos_2d/cocos_2d.bridgesupport +9154 -0
  103. data/vendor/vendor-ios/cocos_2d/cocos_2d_exceptions.bridgesupport +39 -0
  104. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCAction.h +23 -23
  105. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCActionCamera.h +21 -19
  106. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCActionCatmullRom.h +18 -6
  107. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCActionEase.h +117 -31
  108. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCActionGrid.h +19 -17
  109. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCActionGrid3D.h +45 -42
  110. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCActionInstant.h +21 -13
  111. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCActionInterval.h +123 -81
  112. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCActionManager.h +2 -2
  113. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCActionPageTurn3D.h +2 -1
  114. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCActionProgressTimer.h +4 -4
  115. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCActionTiledGrid.h +46 -38
  116. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCActionTween.h +3 -3
  117. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCAnimation.h +8 -8
  118. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCAnimationCache.h +2 -2
  119. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCAtlasNode.h +19 -17
  120. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCCamera.h +12 -12
  121. data/vendor/vendor-ios/cocos_2d/include/CCClippingNode.h +77 -0
  122. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCConfiguration.h +31 -13
  123. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCDirector.h +51 -42
  124. data/vendor/vendor-ios/cocos_2d/include/CCDrawNode.h +65 -0
  125. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCDrawingPrimitives.h +42 -8
  126. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCGLProgram.h +56 -21
  127. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCGrabber.h +2 -2
  128. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCGrid.h +29 -29
  129. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCLabelAtlas.h +5 -2
  130. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCLabelBMFont.h +56 -32
  131. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCLabelTTF.h +20 -20
  132. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCLayer.h +107 -79
  133. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCMenu.h +10 -14
  134. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCMenuItem.h +37 -32
  135. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCMotionStreak.h +18 -19
  136. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCNode+Debug.h +0 -0
  137. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCNode.h +87 -37
  138. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCParallaxNode.h +2 -2
  139. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCParticleBatchNode.h +2 -2
  140. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCParticleExamples.h +22 -0
  141. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCParticleSystem.h +51 -40
  142. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCParticleSystemQuad.h +4 -4
  143. data/vendor/vendor-ios/cocos_2d/include/CCPhysicsDebugNode.h +58 -0
  144. data/vendor/vendor-ios/cocos_2d/include/CCPhysicsSprite.h +82 -0
  145. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCProgressTimer.h +9 -11
  146. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCProtocols.h +54 -26
  147. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCRenderTexture.h +29 -9
  148. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCScene.h +4 -0
  149. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCScheduler.h +94 -40
  150. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCShaderCache.h +1 -1
  151. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCSprite.h +21 -28
  152. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCSpriteBatchNode.h +16 -9
  153. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCSpriteFrame.h +10 -10
  154. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCSpriteFrameCache.h +6 -6
  155. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCTMXLayer.h +16 -16
  156. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCTMXObjectGroup.h +4 -4
  157. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCTMXTiledMap.h +9 -9
  158. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCTMXXMLParser.h +44 -33
  159. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCTexture2D.h +17 -25
  160. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCTextureAtlas.h +10 -10
  161. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCTextureCache.h +4 -4
  162. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCTexturePVR.h +25 -8
  163. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCTileMapAtlas.h +6 -6
  164. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCTransition.h +57 -12
  165. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCTransitionPageTurn.h +2 -2
  166. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/CCTransitionProgress.h +27 -5
  167. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Platforms}/CCGL.h +4 -2
  168. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Platforms}/CCNS.h +0 -0
  169. data/vendor/vendor-ios/cocos_2d/include/Platforms/Mac/CCDirectorMac.h +110 -0
  170. data/vendor/vendor-ios/cocos_2d/include/Platforms/Mac/CCEventDispatcher.h +343 -0
  171. data/vendor/vendor-ios/cocos_2d/include/Platforms/Mac/CCGLView.h +103 -0
  172. data/vendor/vendor-ios/cocos_2d/include/Platforms/Mac/CCWindow.h +41 -0
  173. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Platforms/iOS}/CCDirectorIOS.h +12 -5
  174. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Platforms/iOS}/CCES2Renderer.h +12 -12
  175. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Platforms/iOS}/CCESRenderer.h +0 -0
  176. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Platforms/iOS}/CCGLView.h +28 -13
  177. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Platforms/iOS}/CCTouchDelegateProtocol.h +4 -4
  178. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Platforms/iOS}/CCTouchDispatcher.h +2 -2
  179. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Platforms/iOS}/CCTouchHandler.h +7 -7
  180. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Support}/CCArray.h +1 -1
  181. data/vendor/vendor-ios/cocos_2d/include/Support/CCFileUtils.h +394 -0
  182. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Support}/CCProfiling.h +0 -0
  183. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Support}/CCVertex.h +1 -1
  184. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Support}/CGPointExtension.h +4 -2
  185. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Support}/NSThread+performBlock.h +0 -0
  186. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Support}/OpenGL_Internal.h +0 -0
  187. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Support}/TGAlib.h +0 -0
  188. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Support}/TransformUtils.h +0 -0
  189. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Support}/ZipUtils.h +4 -4
  190. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Support}/base64.h +0 -0
  191. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Support}/ccCArray.h +15 -15
  192. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Support}/ccUtils.h +0 -0
  193. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Support}/uthash.h +129 -184
  194. data/vendor/{Cocos2D/include → vendor-ios/cocos_2d/include/Support}/utlist.h +298 -55
  195. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/ccConfig.h +56 -9
  196. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/ccDeprecated.h +131 -0
  197. data/vendor/vendor-ios/cocos_2d/include/ccFPSImages.h +39 -0
  198. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/ccGLStateCache.h +44 -26
  199. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/ccMacros.h +9 -9
  200. data/vendor/vendor-ios/cocos_2d/include/ccShader_PositionColorLengthTexture_frag.h +41 -0
  201. data/vendor/vendor-ios/cocos_2d/include/ccShader_PositionColorLengthTexture_vert.h +47 -0
  202. data/vendor/vendor-ios/cocos_2d/include/ccShader_PositionColor_frag.h +37 -0
  203. data/vendor/vendor-ios/cocos_2d/include/ccShader_PositionColor_vert.h +40 -0
  204. data/vendor/vendor-ios/cocos_2d/include/ccShader_PositionTextureA8Color_frag.h +41 -0
  205. data/vendor/vendor-ios/cocos_2d/include/ccShader_PositionTextureA8Color_vert.h +45 -0
  206. data/vendor/vendor-ios/cocos_2d/include/ccShader_PositionTextureColorAlphaTest_frag.h +47 -0
  207. data/vendor/vendor-ios/cocos_2d/include/ccShader_PositionTextureColor_frag.h +39 -0
  208. data/vendor/vendor-ios/cocos_2d/include/ccShader_PositionTextureColor_vert.h +45 -0
  209. data/vendor/vendor-ios/cocos_2d/include/ccShader_PositionTexture_frag.h +38 -0
  210. data/vendor/vendor-ios/cocos_2d/include/ccShader_PositionTexture_uColor_frag.h +41 -0
  211. data/vendor/vendor-ios/cocos_2d/include/ccShader_PositionTexture_uColor_vert.h +41 -0
  212. data/vendor/vendor-ios/cocos_2d/include/ccShader_PositionTexture_vert.h +41 -0
  213. data/vendor/vendor-ios/cocos_2d/include/ccShader_Position_uColor_frag.h +37 -0
  214. data/vendor/vendor-ios/cocos_2d/include/ccShader_Position_uColor_vert.h +43 -0
  215. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/ccShaders.h +11 -0
  216. data/vendor/vendor-ios/cocos_2d/include/ccTypes.h +392 -0
  217. data/vendor/vendor-ios/cocos_2d/include/cocos2d-ios-exceptions.bridgesupport +39 -0
  218. data/vendor/{Cocos2D → vendor-ios/cocos_2d}/include/cocos2d.h +28 -3
  219. data/vendor/vendor-ios/cocos_2d/include/gen_cocos2d_bridgesupport.sh +17 -0
  220. data/vendor/vendor-ios/cocos_2d/include/gen_cocos2d_complement.sh +17 -0
  221. data/vendor/vendor-ios/cocos_2d/libcocos2d.a +0 -0
  222. data/vendor/vendor-osx/box_2d/box_2d.bridgesupport +176 -0
  223. data/vendor/vendor-osx/box_2d/include/B2DBody.h +46 -0
  224. data/vendor/vendor-osx/box_2d/include/B2DCircleShape.h +16 -0
  225. data/vendor/vendor-osx/box_2d/include/B2DContactListener.h +30 -0
  226. data/vendor/vendor-osx/box_2d/include/B2DEdgeShape.h +17 -0
  227. data/vendor/vendor-osx/box_2d/include/B2DPolygonShape.h +16 -0
  228. data/vendor/vendor-osx/box_2d/include/B2DShape.h +18 -0
  229. data/vendor/vendor-osx/box_2d/include/B2DWorld.h +44 -0
  230. data/vendor/vendor-osx/box_2d/libBox2D.a +0 -0
  231. data/vendor/vendor-osx/cocos_2d/cocos_2d.bridgesupport +8292 -0
  232. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCAction.h +195 -0
  233. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCActionCamera.h +75 -0
  234. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCActionCatmullRom.h +151 -0
  235. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCActionEase.h +245 -0
  236. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCActionGrid.h +167 -0
  237. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCActionGrid3D.h +208 -0
  238. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCActionInstant.h +235 -0
  239. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCActionInterval.h +473 -0
  240. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCActionManager.h +113 -0
  241. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCActionPageTurn3D.h +43 -0
  242. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCActionProgressTimer.h +59 -0
  243. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCActionTiledGrid.h +219 -0
  244. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCActionTween.h +62 -0
  245. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCAnimation.h +150 -0
  246. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCAnimationCache.h +74 -0
  247. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCAtlasNode.h +98 -0
  248. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCCamera.h +98 -0
  249. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCClippingNode.h +77 -0
  250. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCConfiguration.h +144 -0
  251. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCDirector.h +353 -0
  252. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCDrawNode.h +65 -0
  253. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCDrawingPrimitives.h +173 -0
  254. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCGLProgram.h +185 -0
  255. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCGrabber.h +44 -0
  256. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCGrid.h +130 -0
  257. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCLabelAtlas.h +71 -0
  258. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCLabelBMFont.h +240 -0
  259. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCLabelTTF.h +132 -0
  260. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCLayer.h +308 -0
  261. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCMenu.h +96 -0
  262. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCMenuItem.h +428 -0
  263. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCMotionStreak.h +86 -0
  264. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCNode+Debug.h +39 -0
  265. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCNode.h +619 -0
  266. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCParallaxNode.h +50 -0
  267. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCParticleBatchNode.h +99 -0
  268. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCParticleExamples.h +117 -0
  269. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCParticleSystem.h +464 -0
  270. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCParticleSystemQuad.h +73 -0
  271. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCPhysicsDebugNode.h +58 -0
  272. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCPhysicsSprite.h +82 -0
  273. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCProgressTimer.h +92 -0
  274. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCProtocols.h +160 -0
  275. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCRenderTexture.h +159 -0
  276. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCScene.h +47 -0
  277. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCScheduler.h +284 -0
  278. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCShaderCache.h +60 -0
  279. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCSprite.h +281 -0
  280. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCSpriteBatchNode.h +145 -0
  281. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCSpriteFrame.h +126 -0
  282. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCSpriteFrameCache.h +121 -0
  283. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCTMXLayer.h +164 -0
  284. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCTMXObjectGroup.h +67 -0
  285. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCTMXTiledMap.h +145 -0
  286. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCTMXXMLParser.h +228 -0
  287. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCTexture2D.h +349 -0
  288. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCTextureAtlas.h +188 -0
  289. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCTextureCache.h +146 -0
  290. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCTexturePVR.h +146 -0
  291. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCTileMapAtlas.h +83 -0
  292. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCTransition.h +341 -0
  293. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCTransitionPageTurn.h +60 -0
  294. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/CCTransitionProgress.h +84 -0
  295. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Platforms/CCGL.h +74 -0
  296. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Platforms/CCNS.h +54 -0
  297. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Platforms/Mac/CCDirectorMac.h +110 -0
  298. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Platforms/Mac/CCEventDispatcher.h +343 -0
  299. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Platforms/Mac/CCGLView.h +103 -0
  300. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Platforms/Mac/CCWindow.h +41 -0
  301. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/CCArray.h +119 -0
  302. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/CCFileUtils.h +394 -0
  303. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/CCProfiling.h +89 -0
  304. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/CCVertex.h +36 -0
  305. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/CGPointExtension.h +346 -0
  306. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/NSThread+performBlock.h +22 -0
  307. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/OpenGL_Internal.h +86 -0
  308. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/TGAlib.h +55 -0
  309. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/TransformUtils.h +36 -0
  310. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/ZipUtils.h +91 -0
  311. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/base64.h +33 -0
  312. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/ccCArray.h +229 -0
  313. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/ccUtils.h +36 -0
  314. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/uthash.h +917 -0
  315. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/Support/utlist.h +733 -0
  316. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccConfig.h +292 -0
  317. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccDeprecated.h +431 -0
  318. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccFPSImages.h +39 -0
  319. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccGLStateCache.h +156 -0
  320. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccMacros.h +353 -0
  321. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_PositionColorLengthTexture_frag.h +41 -0
  322. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_PositionColorLengthTexture_vert.h +47 -0
  323. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_PositionColor_frag.h +37 -0
  324. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_PositionColor_vert.h +40 -0
  325. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_PositionTextureA8Color_frag.h +41 -0
  326. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_PositionTextureA8Color_vert.h +45 -0
  327. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_PositionTextureColorAlphaTest_frag.h +47 -0
  328. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_PositionTextureColor_frag.h +39 -0
  329. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_PositionTextureColor_vert.h +45 -0
  330. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_PositionTexture_frag.h +38 -0
  331. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_PositionTexture_uColor_frag.h +41 -0
  332. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_PositionTexture_uColor_vert.h +41 -0
  333. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_PositionTexture_vert.h +41 -0
  334. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_Position_uColor_frag.h +37 -0
  335. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShader_Position_uColor_vert.h +43 -0
  336. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/ccShaders.h +56 -0
  337. data/vendor/{Cocos2D/include → vendor-osx/cocos_2d/cocos_2d_include}/ccTypes.h +39 -35
  338. data/vendor/vendor-osx/cocos_2d/cocos_2d_include/cocos2d.h +203 -0
  339. data/vendor/vendor-osx/cocos_2d/libcocos2d.a +0 -0
  340. metadata +363 -195
  341. data/app/layers/box2d_layer.rb +0 -109
  342. data/app/layers/cocos2d_layer.rb +0 -14
  343. data/app/layers/cocos_motion_layer.rb +0 -145
  344. data/app/layers/menu_layer.rb +0 -59
  345. data/lib/joybox/box2d/world.rb +0 -79
  346. data/resources/box2d/blocks_sprite_sheet.png +0 -0
  347. data/resources/cocos_motion/dot.png +0 -0
  348. data/resources/cocos_motion/dot_selected.png +0 -0
  349. data/resources/cocos_motion/grossini.png +0 -0
  350. data/resources/cocos_motion/grossinis_sister.png +0 -0
  351. data/resources/cocos_motion/grossinis_sister_two.png +0 -0
  352. data/resources/cocos_motion/left_arrow.png +0 -0
  353. data/resources/cocos_motion/left_arrow_selected.png +0 -0
  354. data/resources/cocos_motion/right_arrow.png +0 -0
  355. data/resources/cocos_motion/right_arrow_selected.png +0 -0
  356. data/vendor/Cocos2D/Cocos2D.bridgesupport +0 -7808
  357. data/vendor/Cocos2D/include/CCFileUtils.h +0 -188
  358. data/vendor/Cocos2D/include/CocosDenshion/CDAudioManager.h +0 -243
  359. data/vendor/Cocos2D/include/CocosDenshion/CDConfig.h +0 -60
  360. data/vendor/Cocos2D/include/CocosDenshion/CDOpenALSupport.h +0 -77
  361. data/vendor/Cocos2D/include/CocosDenshion/CDXPropertyModifierAction.h +0 -45
  362. data/vendor/Cocos2D/include/CocosDenshion/CocosDenshion.h +0 -440
  363. data/vendor/Cocos2D/include/CocosDenshion/SimpleAudioEngine.h +0 -90
  364. data/vendor/Cocos2D/include/RubyMotionSchedule.h +0 -7
  365. data/vendor/Cocos2D/include/ccShader_PositionColor_frag.h +0 -12
  366. data/vendor/Cocos2D/include/ccShader_PositionColor_vert.h +0 -17
  367. data/vendor/Cocos2D/include/ccShader_PositionTextureA8Color_frag.h +0 -16
  368. data/vendor/Cocos2D/include/ccShader_PositionTextureA8Color_vert.h +0 -21
  369. data/vendor/Cocos2D/include/ccShader_PositionTextureColorAlphaTest_frag.h +0 -23
  370. data/vendor/Cocos2D/include/ccShader_PositionTextureColor_frag.h +0 -14
  371. data/vendor/Cocos2D/include/ccShader_PositionTextureColor_vert.h +0 -22
  372. data/vendor/Cocos2D/include/ccShader_PositionTexture_frag.h +0 -13
  373. data/vendor/Cocos2D/include/ccShader_PositionTexture_uColor_frag.h +0 -16
  374. data/vendor/Cocos2D/include/ccShader_PositionTexture_uColor_vert.h +0 -18
  375. data/vendor/Cocos2D/include/ccShader_PositionTexture_vert.h +0 -17
  376. data/vendor/Cocos2D/include/ccShader_Position_uColor_frag.h +0 -12
  377. data/vendor/Cocos2D/include/ccShader_Position_uColor_vert.h +0 -19
  378. data/vendor/Cocos2D/include/kazmath/GL/mat4stack.h +0 -51
  379. data/vendor/Cocos2D/include/kazmath/GL/matrix.h +0 -58
  380. data/vendor/Cocos2D/include/kazmath/aabb.h +0 -53
  381. data/vendor/Cocos2D/include/kazmath/kazmath.h +0 -39
  382. data/vendor/Cocos2D/include/kazmath/mat3.h +0 -75
  383. data/vendor/Cocos2D/include/kazmath/mat4.h +0 -93
  384. data/vendor/Cocos2D/include/kazmath/neon_matrix_impl.h +0 -41
  385. data/vendor/Cocos2D/include/kazmath/plane.h +0 -70
  386. data/vendor/Cocos2D/include/kazmath/quaternion.h +0 -113
  387. data/vendor/Cocos2D/include/kazmath/ray2.h +0 -50
  388. data/vendor/Cocos2D/include/kazmath/utility.h +0 -74
  389. data/vendor/Cocos2D/include/kazmath/vec2.h +0 -64
  390. data/vendor/Cocos2D/include/kazmath/vec3.h +0 -68
  391. data/vendor/Cocos2D/include/kazmath/vec4.h +0 -68
  392. data/vendor/Cocos2D/libCocosDenshion.a +0 -0
  393. data/vendor/Cocos2D/libcocos2d.a +0 -0
@@ -0,0 +1,349 @@
1
+ /*
2
+
3
+ ===== IMPORTANT =====
4
+
5
+ This is sample code demonstrating API, technology or techniques in development.
6
+ Although this sample code has been reviewed for technical accuracy, it is not
7
+ final. Apple is supplying this information to help you plan for the adoption of
8
+ the technologies and programming interfaces described herein. This information
9
+ is subject to change, and software implemented based on this sample code should
10
+ be tested with final operating system software and final documentation. Newer
11
+ versions of this sample code may be provided with future seeds of the API or
12
+ technology. For information about updates to this and other developer
13
+ documentation, view the New & Updated sidebars in subsequent documentation
14
+ seeds.
15
+
16
+ =====================
17
+
18
+ File: Texture2D.h
19
+ Abstract: Creates OpenGL 2D textures from images or text.
20
+
21
+ Version: 1.6
22
+
23
+ Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Inc.
24
+ ("Apple") in consideration of your agreement to the following terms, and your
25
+ use, installation, modification or redistribution of this Apple software
26
+ constitutes acceptance of these terms. If you do not agree with these terms,
27
+ please do not use, install, modify or redistribute this Apple software.
28
+
29
+ In consideration of your agreement to abide by the following terms, and subject
30
+ to these terms, Apple grants you a personal, non-exclusive license, under
31
+ Apple's copyrights in this original Apple software (the "Apple Software"), to
32
+ use, reproduce, modify and redistribute the Apple Software, with or without
33
+ modifications, in source and/or binary forms; provided that if you redistribute
34
+ the Apple Software in its entirety and without modifications, you must retain
35
+ this notice and the following text and disclaimers in all such redistributions
36
+ of the Apple Software.
37
+ Neither the name, trademarks, service marks or logos of Apple Inc. may be used
38
+ to endorse or promote products derived from the Apple Software without specific
39
+ prior written permission from Apple. Except as expressly stated in this notice,
40
+ no other rights or licenses, express or implied, are granted by Apple herein,
41
+ including but not limited to any patent rights that may be infringed by your
42
+ derivative works or by other works in which the Apple Software may be
43
+ incorporated.
44
+
45
+ The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO
46
+ WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED
47
+ WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR
48
+ PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN
49
+ COMBINATION WITH YOUR PRODUCTS.
50
+
51
+ IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR
52
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
53
+ GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
54
+ ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR
55
+ DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF
56
+ CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF
57
+ APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
58
+
59
+ Copyright (C) 2008 Apple Inc. All Rights Reserved.
60
+
61
+ */
62
+
63
+ #import <Foundation/Foundation.h> // for NSObject
64
+
65
+ #import "ccTypes.h"
66
+ #import "ccMacros.h"
67
+
68
+ #import "Platforms/CCGL.h" // OpenGL stuff
69
+ #import "Platforms/CCNS.h" // Next-Step stuff
70
+
71
+ //CONSTANTS:
72
+
73
+ /** @typedef CCTexture2DPixelFormat
74
+ Possible texture pixel formats
75
+ */
76
+ typedef enum {
77
+ //! 32-bit texture: RGBA8888
78
+ kCCTexture2DPixelFormat_RGBA8888,
79
+ //! 32-bit texture without Alpha channel. Don't use it.
80
+ kCCTexture2DPixelFormat_RGB888,
81
+ //! 16-bit texture without Alpha channel
82
+ kCCTexture2DPixelFormat_RGB565,
83
+ //! 8-bit textures used as masks
84
+ kCCTexture2DPixelFormat_A8,
85
+ //! 8-bit intensity texture
86
+ kCCTexture2DPixelFormat_I8,
87
+ //! 16-bit textures used as masks
88
+ kCCTexture2DPixelFormat_AI88,
89
+ //! 16-bit textures: RGBA4444
90
+ kCCTexture2DPixelFormat_RGBA4444,
91
+ //! 16-bit textures: RGB5A1
92
+ kCCTexture2DPixelFormat_RGB5A1,
93
+ //! 4-bit PVRTC-compressed texture: PVRTC4
94
+ kCCTexture2DPixelFormat_PVRTC4,
95
+ //! 2-bit PVRTC-compressed texture: PVRTC2
96
+ kCCTexture2DPixelFormat_PVRTC2,
97
+
98
+ //! Default texture format: RGBA8888
99
+ kCCTexture2DPixelFormat_Default = kCCTexture2DPixelFormat_RGBA8888,
100
+
101
+ } CCTexture2DPixelFormat;
102
+
103
+
104
+ @class CCGLProgram;
105
+
106
+ /** CCTexture2D class.
107
+ * This class allows to easily create OpenGL 2D textures from images, text or raw data.
108
+ * The created CCTexture2D object will always have power-of-two dimensions.
109
+ * Depending on how you create the CCTexture2D object, the actual image area of the texture might be smaller than the texture dimensions i.e. "contentSize" != (pixelsWide, pixelsHigh) and (maxS, maxT) != (1.0, 1.0).
110
+ * Be aware that the content of the generated textures will be upside-down!
111
+ */
112
+ @interface CCTexture2D : NSObject
113
+ {
114
+ GLuint _name;
115
+ CGSize _size;
116
+ NSUInteger _width,
117
+ _height;
118
+ CCTexture2DPixelFormat _format;
119
+ GLfloat _maxS,
120
+ _maxT;
121
+ BOOL _hasPremultipliedAlpha;
122
+ BOOL _hasMipmaps;
123
+
124
+ ccResolutionType _resolutionType;
125
+
126
+ // needed for drawAtRect, drawInPoint
127
+ CCGLProgram *_shaderProgram;
128
+
129
+ }
130
+ /** Initializes with a texture2d with data */
131
+ - (id) initWithData:(const void*)data pixelFormat:(CCTexture2DPixelFormat)pixelFormat pixelsWide:(NSUInteger)width pixelsHigh:(NSUInteger)height contentSize:(CGSize)size;
132
+
133
+ /** These functions are needed to create mutable textures */
134
+ - (void) releaseData:(void*)data;
135
+ - (void*) keepData:(void*)data length:(NSUInteger)length;
136
+
137
+ /** pixel format of the texture */
138
+ @property(nonatomic,readonly) CCTexture2DPixelFormat pixelFormat;
139
+ /** width in pixels */
140
+ @property(nonatomic,readonly) NSUInteger pixelsWide;
141
+ /** hight in pixels */
142
+ @property(nonatomic,readonly) NSUInteger pixelsHigh;
143
+
144
+ /** texture name */
145
+ @property(nonatomic,readonly) GLuint name;
146
+
147
+ /** returns content size of the texture in pixels */
148
+ @property(nonatomic,readonly, nonatomic) CGSize contentSizeInPixels;
149
+
150
+ /** texture max S */
151
+ @property(nonatomic,readwrite) GLfloat maxS;
152
+ /** texture max T */
153
+ @property(nonatomic,readwrite) GLfloat maxT;
154
+ /** whether or not the texture has their Alpha premultiplied */
155
+ @property(nonatomic,readonly) BOOL hasPremultipliedAlpha;
156
+
157
+ /** shader program used by drawAtPoint and drawInRect */
158
+ @property(nonatomic,readwrite,retain) CCGLProgram *shaderProgram;
159
+
160
+ /** Returns the resolution type of the texture.
161
+ Is it a RetinaDisplay texture, an iPad texture, a Mac, a Mac RetinaDisplay or an standard texture ?
162
+
163
+ Should be a readonly property. It is readwrite as a hack.
164
+
165
+ @since v1.1
166
+ */
167
+ @property (nonatomic, readwrite) ccResolutionType resolutionType;
168
+
169
+
170
+ /** returns the content size of the texture in points */
171
+ -(CGSize) contentSize;
172
+
173
+
174
+ @end
175
+
176
+ /**
177
+ Drawing extensions to make it easy to draw basic quads using a CCTexture2D object.
178
+ These functions require GL_TEXTURE_2D and both GL_VERTEX_ARRAY and GL_TEXTURE_COORD_ARRAY client states to be enabled.
179
+ */
180
+ @interface CCTexture2D (Drawing)
181
+ /** draws a texture at a given point */
182
+ - (void) drawAtPoint:(CGPoint)point;
183
+ /** draws a texture inside a rect */
184
+ - (void) drawInRect:(CGRect)rect;
185
+ @end
186
+
187
+ /**
188
+ Extensions to make it easy to create a CCTexture2D object from an image file.
189
+ Note that RGBA type textures will have their alpha premultiplied - use the blending mode (GL_ONE, GL_ONE_MINUS_SRC_ALPHA).
190
+ */
191
+ @interface CCTexture2D (Image)
192
+ /** Initializes a texture from a CGImage object */
193
+ - (id) initWithCGImage:(CGImageRef)cgImage resolutionType:(ccResolutionType)resolution;
194
+ @end
195
+
196
+ /**
197
+ Extensions to make it easy to create a CCTexture2D object from a string of text.
198
+ Note that the generated textures are of type A8 - use the blending mode (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA).
199
+ */
200
+ @interface CCTexture2D (Text)
201
+ /** Initializes a texture from a string with dimensions, alignment, line break mode, font name and font size
202
+ Supported lineBreakModes:
203
+ - iOS: all UILineBreakMode supported modes
204
+ - Mac: Only NSLineBreakByWordWrapping is supported.
205
+ @since v1.0
206
+ */
207
+ - (id) initWithString:(NSString*)string fontName:(NSString*)name fontSize:(CGFloat)size dimensions:(CGSize)dimensions hAlignment:(CCTextAlignment)alignment vAlignment:(CCVerticalTextAlignment) vertAlignment lineBreakMode:(CCLineBreakMode)lineBreakMode ;
208
+ /** Initializes a texture from a string with dimensions, alignment, font name and font size */
209
+ - (id) initWithString:(NSString*)string fontName:(NSString*)name fontSize:(CGFloat)size dimensions:(CGSize)dimensions hAlignment:(CCTextAlignment)alignment vAlignment:(CCVerticalTextAlignment) vertAlignment;
210
+ /** Initializes a texture from a string with font name and font size */
211
+ - (id) initWithString:(NSString*)string fontName:(NSString*)name fontSize:(CGFloat)size;
212
+ @end
213
+
214
+
215
+ /**
216
+ Extensions to make it easy to create a CCTexture2D object from a PVRTC file
217
+ Note that the generated textures don't have their alpha premultiplied - use the blending mode (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA).
218
+ */
219
+ @interface CCTexture2D (PVRSupport)
220
+ /** Initializes a texture from a PVR file.
221
+
222
+ Supported PVR formats:
223
+ - BGRA 8888
224
+ - RGBA 8888
225
+ - RGBA 4444
226
+ - RGBA 5551
227
+ - RBG 565
228
+ - A 8
229
+ - I 8
230
+ - AI 8
231
+ - PVRTC 2BPP
232
+ - PVRTC 4BPP
233
+
234
+ By default PVR images are treated as if they alpha channel is NOT premultiplied. You can override this behavior with this class method:
235
+ - PVRImagesHavePremultipliedAlpha:(BOOL)haveAlphaPremultiplied;
236
+
237
+ IMPORTANT: This method is only defined on iOS. It is not supported on the Mac version.
238
+
239
+ */
240
+ -(id) initWithPVRFile: (NSString*) file;
241
+
242
+ /** treats (or not) PVR files as if they have alpha premultiplied.
243
+ Since it is impossible to know at runtime if the PVR images have the alpha channel premultiplied, it is
244
+ possible load them as if they have (or not) the alpha channel premultiplied.
245
+
246
+ By default it is disabled.
247
+
248
+ @since v0.99.5
249
+ */
250
+ +(void) PVRImagesHavePremultipliedAlpha:(BOOL)haveAlphaPremultiplied;
251
+ @end
252
+
253
+ /**
254
+ Extension to set the Min / Mag filter
255
+ */
256
+ typedef struct _ccTexParams {
257
+ GLuint minFilter;
258
+ GLuint magFilter;
259
+ GLuint wrapS;
260
+ GLuint wrapT;
261
+ } ccTexParams;
262
+
263
+ @interface CCTexture2D (GLFilter)
264
+ /** sets the min filter, mag filter, wrap s and wrap t texture parameters.
265
+ If the texture size is NPOT (non power of 2), then in can only use GL_CLAMP_TO_EDGE in GL_TEXTURE_WRAP_{S,T}.
266
+
267
+ @warning Calling this method could allocate additional texture memory.
268
+
269
+ @since v0.8
270
+ */
271
+ -(void) setTexParameters: (ccTexParams*) texParams;
272
+
273
+ /** sets antialias texture parameters:
274
+ - GL_TEXTURE_MIN_FILTER = GL_LINEAR
275
+ - GL_TEXTURE_MAG_FILTER = GL_LINEAR
276
+
277
+ @warning Calling this method could allocate additional texture memory.
278
+
279
+ @since v0.8
280
+ */
281
+ - (void) setAntiAliasTexParameters;
282
+
283
+ /** sets alias texture parameters:
284
+ - GL_TEXTURE_MIN_FILTER = GL_NEAREST
285
+ - GL_TEXTURE_MAG_FILTER = GL_NEAREST
286
+
287
+ @warning Calling this method could allocate additional texture memory.
288
+
289
+ @since v0.8
290
+ */
291
+ - (void) setAliasTexParameters;
292
+
293
+
294
+ /** Generates mipmap images for the texture.
295
+ It only works if the texture size is POT (power of 2).
296
+ @since v0.99.0
297
+ */
298
+ -(void) generateMipmap;
299
+
300
+
301
+ @end
302
+
303
+ @interface CCTexture2D (PixelFormat)
304
+ /** sets the default pixel format for CGImages that contains alpha channel.
305
+ If the CGImage contains alpha channel, then the options are:
306
+ - generate 32-bit textures: kCCTexture2DPixelFormat_RGBA8888 (default one)
307
+ - generate 16-bit textures: kCCTexture2DPixelFormat_RGBA4444
308
+ - generate 16-bit textures: kCCTexture2DPixelFormat_RGB5A1
309
+ - generate 24-bit textures: kCCTexture2DPixelFormat_RGB888 (no alpha)
310
+ - generate 16-bit textures: kCCTexture2DPixelFormat_RGB565 (no alpha)
311
+ - generate 8-bit textures: kCCTexture2DPixelFormat_A8 (only use it if you use just 1 color)
312
+
313
+ How does it work ?
314
+ - If the image is an RGBA (with Alpha) then the default pixel format will be used (it can be a 8-bit, 16-bit or 32-bit texture)
315
+ - If the image is an RGB (without Alpha) then: If the default pixel format is RGBA8888 then a RGBA8888 (32-bit) will be used. Otherwise a RGB565 (16-bit texture) will be used.
316
+
317
+ This parameter is not valid for PVR / PVR.CCZ images.
318
+
319
+ @since v0.8
320
+ */
321
+ +(void) setDefaultAlphaPixelFormat:(CCTexture2DPixelFormat)format;
322
+
323
+ /** returns the alpha pixel format
324
+ @since v0.8
325
+ */
326
+ +(CCTexture2DPixelFormat) defaultAlphaPixelFormat;
327
+
328
+ /** returns the bits-per-pixel of the in-memory OpenGL texture
329
+ @since v1.0
330
+ */
331
+ -(NSUInteger) bitsPerPixelForFormat;
332
+
333
+ /** returns the pixel format in a NSString.
334
+ @since v2.0
335
+ */
336
+ -(NSString*) stringForFormat;
337
+
338
+
339
+ /** Helper functions that returns bits per pixels for a given format.
340
+ @since v2.0
341
+ */
342
+ +(NSUInteger) bitsPerPixelForFormat:(CCTexture2DPixelFormat)format;
343
+
344
+ @end
345
+
346
+
347
+
348
+
349
+
@@ -0,0 +1,188 @@
1
+ /*
2
+ * cocos2d for iPhone: http://www.cocos2d-iphone.org
3
+ *
4
+ * Copyright (c) 2008-2010 Ricardo Quesada
5
+ * Copyright (c) 2011 Zynga Inc.
6
+ *
7
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ * of this software and associated documentation files (the "Software"), to deal
9
+ * in the Software without restriction, including without limitation the rights
10
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ * copies of the Software, and to permit persons to whom the Software is
12
+ * furnished to do so, subject to the following conditions:
13
+ *
14
+ * The above copyright notice and this permission notice shall be included in
15
+ * all copies or substantial portions of the Software.
16
+ *
17
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23
+ * THE SOFTWARE.
24
+ *
25
+ */
26
+
27
+ #import "CCTexture2D.h"
28
+ #import "ccTypes.h"
29
+ #import "ccConfig.h"
30
+
31
+ /** A class that implements a Texture Atlas.
32
+ Supported features:
33
+ * The atlas file can be a PVRTC, PNG or any other format supported by Texture2D
34
+ * Quads can be updated in runtime
35
+ * Quads can be added in runtime
36
+ * Quads can be removed in runtime
37
+ * Quads can be re-ordered in runtime
38
+ * The TextureAtlas capacity can be increased or decreased in runtime
39
+ * OpenGL component: V3F, C4B, T2F.
40
+ The quads are rendered using an OpenGL ES VBO.
41
+ To render the quads using an interleaved vertex array list, you should modify the ccConfig.h file
42
+ */
43
+ @interface CCTextureAtlas : NSObject
44
+ {
45
+ NSUInteger _totalQuads;
46
+ NSUInteger _capacity;
47
+ ccV3F_C4B_T2F_Quad *_quads; // quads to be rendered
48
+ GLushort *_indices;
49
+ CCTexture2D *_texture;
50
+
51
+ GLuint _buffersVBO[2]; //0: vertex 1: indices
52
+ BOOL _dirty; //indicates whether or not the array buffer of the VBO needs to be updated
53
+
54
+ #if CC_TEXTURE_ATLAS_USE_VAO
55
+ GLuint _VAOname;
56
+ #endif
57
+ }
58
+
59
+ /** quantity of quads that are going to be drawn */
60
+ @property (nonatomic,readonly) NSUInteger totalQuads;
61
+ /** quantity of quads that can be stored with the current texture atlas size */
62
+ @property (nonatomic,readonly) NSUInteger capacity;
63
+ /** Texture of the texture atlas */
64
+ @property (nonatomic,retain) CCTexture2D *texture;
65
+ /** Quads that are going to be rendered */
66
+ @property (nonatomic,readwrite) ccV3F_C4B_T2F_Quad *quads;
67
+
68
+ /** creates a TextureAtlas with an filename and with an initial capacity for Quads.
69
+ * The TextureAtlas capacity can be increased in runtime.
70
+ */
71
+ +(id) textureAtlasWithFile:(NSString*)file capacity:(NSUInteger)capacity;
72
+
73
+ /** initializes a TextureAtlas with a filename and with a certain capacity for Quads.
74
+ * The TextureAtlas capacity can be increased in runtime.
75
+ *
76
+ * WARNING: Do not reinitialize the TextureAtlas because it will leak memory (issue #706)
77
+ */
78
+ -(id) initWithFile: (NSString*) file capacity:(NSUInteger)capacity;
79
+
80
+ /** creates a TextureAtlas with a previously initialized Texture2D object, and
81
+ * with an initial capacity for n Quads.
82
+ * The TextureAtlas capacity can be increased in runtime.
83
+ */
84
+ +(id) textureAtlasWithTexture:(CCTexture2D *)tex capacity:(NSUInteger)capacity;
85
+
86
+ /** initializes a TextureAtlas with a previously initialized Texture2D object, and
87
+ * with an initial capacity for Quads.
88
+ * The TextureAtlas capacity can be increased in runtime.
89
+ *
90
+ * WARNING: Do not reinitialize the TextureAtlas because it will leak memory (issue #706)
91
+ */
92
+ -(id) initWithTexture:(CCTexture2D *)tex capacity:(NSUInteger)capacity;
93
+
94
+ /** updates a Quad (texture, vertex and color) at a certain index
95
+ * index must be between 0 and the atlas capacity - 1
96
+ @since v0.8
97
+ */
98
+ -(void) updateQuad:(ccV3F_C4B_T2F_Quad*)quad atIndex:(NSUInteger)index;
99
+
100
+ /** Inserts a Quad (texture, vertex and color) at a certain index
101
+ index must be between 0 and the atlas capacity - 1
102
+ @since v0.8
103
+ */
104
+ -(void) insertQuad:(ccV3F_C4B_T2F_Quad*)quad atIndex:(NSUInteger)index;
105
+
106
+ /** Inserts a c array of quads at a given index
107
+ index must be between 0 and the atlas capacity - 1
108
+ this method doesn't enlarge the array when amount + index > totalQuads
109
+ @since v1.1
110
+ */
111
+ -(void) insertQuads:(ccV3F_C4B_T2F_Quad*)quads atIndex:(NSUInteger)index amount:(NSUInteger)amount;
112
+
113
+ /** Removes the quad that is located at a certain index and inserts it at a new index
114
+ This operation is faster than removing and inserting in a quad in 2 different steps
115
+ @since v0.7.2
116
+ */
117
+ -(void) insertQuadFromIndex:(NSUInteger)fromIndex atIndex:(NSUInteger)newIndex;
118
+
119
+ /** removes a quad at a given index number.
120
+ The capacity remains the same, but the total number of quads to be drawn is reduced in 1
121
+ @since v0.7.2
122
+ */
123
+ -(void) removeQuadAtIndex:(NSUInteger) index;
124
+
125
+ /** removes a amount of quads starting from index
126
+ @since 1.1
127
+ */
128
+ - (void) removeQuadsAtIndex:(NSUInteger) index amount:(NSUInteger) amount;
129
+
130
+ /** removes all Quads.
131
+ The TextureAtlas capacity remains untouched. No memory is freed.
132
+ The total number of quads to be drawn will be 0
133
+ @since v0.7.2
134
+ */
135
+ -(void) removeAllQuads;
136
+
137
+ /** resize the capacity of the CCTextureAtlas.
138
+ * The new capacity can be lower or higher than the current one
139
+ * It returns YES if the resize was successful.
140
+ * If it fails to resize the capacity it will return NO with a new capacity of 0.
141
+ */
142
+ -(BOOL) resizeCapacity: (NSUInteger) n;
143
+
144
+ /**
145
+ Used internally by CCParticleBatchNode
146
+ don't use this unless you know what you're doing
147
+ @since 1.1
148
+ */
149
+ - (void) increaseTotalQuadsWith:(NSUInteger) amount;
150
+
151
+ /** Moves an amount of quads from oldIndex at newIndex
152
+ @since v1.1
153
+ */
154
+ -(void) moveQuadsFromIndex:(NSUInteger)oldIndex amount:(NSUInteger) amount atIndex:(NSUInteger)newIndex;
155
+
156
+ /**
157
+ Moves quads from index till totalQuads to the newIndex
158
+ Used internally by CCParticleBatchNode
159
+ This method doesn't enlarge the array if newIndex + quads to be moved > capacity
160
+ @since 1.1
161
+ */
162
+ - (void) moveQuadsFromIndex:(NSUInteger) index to:(NSUInteger) newIndex;
163
+
164
+ /**
165
+ Ensures that after a realloc quads are still empty
166
+ Used internally by CCParticleBatchNode
167
+ @since 1.1
168
+ */
169
+ - (void) fillWithEmptyQuadsFromIndex:(NSUInteger) index amount:(NSUInteger) amount;
170
+
171
+ /** draws n quads
172
+ * n can't be greater than the capacity of the Atlas
173
+ */
174
+
175
+ -(void) drawNumberOfQuads: (NSUInteger) n;
176
+
177
+ /** draws n quads from an index (offset).
178
+ n + start can't be greater than the capacity of the atlas
179
+
180
+ @since v1.0
181
+ */
182
+ -(void) drawNumberOfQuads: (NSUInteger) n fromIndex: (NSUInteger) start;
183
+
184
+ /** draws all the Atlas's Quads
185
+ */
186
+ -(void) drawQuads;
187
+
188
+ @end
@@ -0,0 +1,146 @@
1
+ /*
2
+ * cocos2d for iPhone: http://www.cocos2d-iphone.org
3
+ *
4
+ * Copyright (c) 2008-2010 Ricardo Quesada
5
+ * Copyright (c) 2011 Zynga Inc.
6
+ *
7
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ * of this software and associated documentation files (the "Software"), to deal
9
+ * in the Software without restriction, including without limitation the rights
10
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ * copies of the Software, and to permit persons to whom the Software is
12
+ * furnished to do so, subject to the following conditions:
13
+ *
14
+ * The above copyright notice and this permission notice shall be included in
15
+ * all copies or substantial portions of the Software.
16
+ *
17
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23
+ * THE SOFTWARE.
24
+ *
25
+ */
26
+
27
+ #import "ccMacros.h"
28
+
29
+ #ifdef __CC_PLATFORM_IOS
30
+ #import <CoreGraphics/CGImage.h>
31
+ #endif
32
+
33
+ #import <Foundation/Foundation.h>
34
+
35
+ @class CCTexture2D;
36
+
37
+ /** Singleton that handles the loading of textures
38
+ * Once the texture is loaded, the next time it will return
39
+ * a reference of the previously loaded texture reducing GPU & CPU memory
40
+ */
41
+ @interface CCTextureCache : NSObject
42
+ {
43
+ NSMutableDictionary *_textures;
44
+
45
+ dispatch_queue_t _loadingQueue;
46
+ dispatch_queue_t _dictQueue;
47
+ }
48
+
49
+ /** Retruns ths shared instance of the cache */
50
+ + (CCTextureCache *) sharedTextureCache;
51
+
52
+ /** purges the cache. It releases the retained instance.
53
+ @since v0.99.0
54
+ */
55
+ +(void)purgeSharedTextureCache;
56
+
57
+
58
+ /** Returns a Texture2D object given an file image
59
+ * If the file image was not previously loaded, it will create a new CCTexture2D
60
+ * object and it will return it. It will use the filename as a key.
61
+ * Otherwise it will return a reference of a previously loaded image.
62
+ * Supported image extensions: .png, .bmp, .tiff, .jpeg, .pvr, .gif
63
+ */
64
+ -(CCTexture2D*) addImage: (NSString*) fileimage;
65
+
66
+ /** Asynchronously, load a texture2d from a file.
67
+ * If the file image was previously loaded, it will use it.
68
+ * Otherwise it will load a texture in a new thread, and when the image is loaded, the callback will be called with the Texture2D as a parameter.
69
+ * The callback will be called in the cocos2d thread, so it is safe to create any cocos2d object from the callback.
70
+ * Supported image extensions: .png, .bmp, .tiff, .jpeg, .pvr, .gif
71
+ * @since v0.8
72
+ */
73
+ -(void) addImageAsync:(NSString*) filename target:(id)target selector:(SEL)selector;
74
+
75
+ /** Asynchronously, load a texture2d from a file.
76
+ * If the file image was previously loaded, it will use it.
77
+ * Otherwise it will load a texture in a new thread, and when the image is loaded, the block will be called.
78
+ * The callback will be called in the cocos2d thread, so it is safe to create any cocos2d object from the callback.
79
+ * Supported image extensions: .png, .bmp, .tiff, .jpeg, .pvr, .gif
80
+ * @since v2.0
81
+ */
82
+ -(void) addImageAsync:(NSString*) filename withBlock:(void(^)(CCTexture2D *tex))block;
83
+
84
+
85
+ /** Returns a Texture2D object given an CGImageRef image
86
+ * If the image was not previously loaded, it will create a new CCTexture2D object and it will return it.
87
+ * Otherwise it will return a reference of a previously loaded image
88
+ * The "key" parameter will be used as the "key" for the cache.
89
+ * If "key" is nil, then a new texture will be created each time.
90
+ * @since v0.8
91
+ */
92
+ -(CCTexture2D*) addCGImage: (CGImageRef) image forKey: (NSString *)key;
93
+
94
+ /** Returns an already created texture. Returns nil if the texture doesn't exist.
95
+ @since v0.99.5
96
+ */
97
+ -(CCTexture2D *) textureForKey:(NSString *)key;
98
+
99
+ /** Purges the dictionary of loaded textures.
100
+ * Call this method if you receive the "Memory Warning"
101
+ * In the short term: it will free some resources preventing your app from being killed
102
+ * In the medium term: it will allocate more resources
103
+ * In the long term: it will be the same
104
+ */
105
+ -(void) removeAllTextures;
106
+
107
+ /** Removes unused textures
108
+ * Textures that have a retain count of 1 will be deleted
109
+ * It is convenient to call this method after when starting a new Scene
110
+ * @since v0.8
111
+ */
112
+ -(void) removeUnusedTextures;
113
+
114
+ /** Deletes a texture from the cache given a texture
115
+ */
116
+ -(void) removeTexture: (CCTexture2D*) tex;
117
+
118
+ /** Deletes a texture from the cache given a its key name
119
+ @since v0.99.4
120
+ */
121
+ -(void) removeTextureForKey: (NSString*) textureKeyName;
122
+
123
+ @end
124
+
125
+
126
+ @interface CCTextureCache (PVRSupport)
127
+
128
+ /** Returns a Texture2D object given an PVR filename.
129
+ * If the file image was not previously loaded, it will create a new CCTexture2D
130
+ * object and it will return it. Otherwise it will return a reference of a previously loaded image
131
+ *
132
+ */
133
+ -(CCTexture2D*) addPVRImage:(NSString*) filename;
134
+
135
+ @end
136
+
137
+
138
+ @interface CCTextureCache (Debug)
139
+ /** Output to CCLOG the current contents of this CCTextureCache
140
+ * This will attempt to calculate the size of each texture, and the total texture memory in use
141
+ *
142
+ * @since v1.0
143
+ */
144
+ -(void) dumpCachedTextureInfo;
145
+
146
+ @end