Fact-checked by Grok 2 weeks ago

Cocos2d

Cocos2d is an for creating games, interactive applications, and graphical user interfaces, renowned for its lightweight design, ease of use, and cross-platform capabilities. Originally released in February 2008 as a Python-based engine developed in Los Cocos, Argentina, by contributors including Lucio Torre, Daniel Moisset, and Rayentray Tappa, it quickly gained traction for in game development challenges like PyWeek. In June 2008, Ricardo Quesada launched a parallel implementation targeted at , known as cocos2d-iphone, which became instrumental in the early mobile gaming boom, powering over 100 titles by 2009, including the top-ranked Stick Wars. This version evolved through community contributions, reaching v1.0 in July 2011 with approximately 140 developers involved, and later transitioned maintainers from Quesada (who joined in 2011) to figures like Birkemose and Volodin. A pivotal branch, Cocos2d-x, emerged in July 2010 as a C++ port of cocos2d-iphone, initiated by Zhe Wang to enable cross-platform development beyond . Acquired and maintained by Chukong Technologies (rebranded as Cocos Inc. in 2022) starting around 2011–2012, Cocos2d-x achieved its first release (v0.7.0) in November 2010 and v1.0 in July 2011, rapidly dominating markets like by November 2011, where it powered top-grossing games and held significant shares in by 2013–2014. In November 2025, Cocos Inc. was acquired by SUD () for approximately $510 million. As of 2025, it serves as the foundation for over 1.7 million registered developers across 203 countries. Key features of the Cocos2d family include robust scene management, sprite rendering with effects like lens distortion and ripples, action-based animations (e.g., move, rotate, scale, and easing), integrated physics engines such as and , particle systems, skeleton animations via or Armature, tile maps, , multi-touch input handling, and audio support through libraries like . These capabilities are accessible via C++ as the core language, with bindings for and , and rendering backed by OpenGL ES 2.0, OpenGL 2.1, or Metal. Supported platforms span mobile (iOS 8.0+, Android 3.0+), desktop (macOS 10.9+, Windows 7+, Linux), and web via HTML5, allowing seamless deployment of applications like games, interactive books, and demos. Additional branches extend functionality, such as cocos2d-html5 (launched March 2012) for browser-based development and Cocos Studio (June 2012) for visual editing tools, while earlier versions of Cocos Creator (1.x and 2.x) built on Cocos2d-x; 3.x and later use a new core for integrated 2D/3D workflows, including AR/VR and smart cockpit applications. The framework's MIT license and active community have made it a staple in the global game industry, emphasizing performance, stability, and accessibility for both indie and professional developers.

History

Origins in Python

Cocos2d was developed in 2008 as an open-source 2D game framework written in , drawing inspiration from libraries such as Pyglet for its rendering and multimedia capabilities. Initially developed in Los Cocos, , in collaboration with Lucio Torre and other contributors including Daniel Moisset and Rayentray Tappa, the framework emerged from efforts to create a lightweight tool for game development during Python programming challenges like PyWeek. This origin marked the beginning of a design centered on simplicity and accessibility for developers prototyping 2D applications on desktop environments. The core design philosophy of the original Cocos2d emphasized a lightweight, scene-graph-based architecture to facilitate of games and graphical applications. This approach utilized a hierarchical structure, where game elements like sprites and layers could be organized as children of parent nodes, enabling efficient management of complex scenes without heavy overhead. By leveraging Python's ease of use and Pyglet's OpenGL acceleration, the framework prioritized developer productivity over exhaustive feature sets, allowing quick iteration in desktop-based development. Among its initial features, Cocos2d included basic handling for rendering 2D images and animations, scene transitions to smoothly switch between game states, and a class responsible for orchestrating the overall game flow, such as running loops and handling input. These components formed the foundation of the framework's event-driven model, where the managed the active , which in turn contained layers and nodes for content organization. The first release, version 0.1 in 2008, targeted desktop Python environments on platforms like Windows, macOS, and , providing a minimal yet functional toolkit for building interactive prototypes. Early adoption of Cocos2d saw it employed in simple , educational demos, and contest entries, where its node hierarchy pattern quickly gained traction for structuring game objects intuitively. Developers appreciated the framework's modularity, which allowed extension through custom nodes and actions, establishing a blueprint for subsequent ports and influencing community-driven projects in Python-based game . This foundational role in desktop experimentation laid the groundwork for broader growth.

iOS-Focused Development

Cocos2d-iphone, the iOS adaptation of the Cocos2d framework, was released in June 2008 by Argentine developer Ricardo Quesada, who ported the engine from to specifically for the and emerging ecosystem. This shift marked a pivotal move toward mobile gaming, leveraging Apple's developer tools to enable of 2D applications on and later hardware. A core innovation in Cocos2d-iphone was its seamless integration with , providing hardware-accelerated 2D rendering that optimized performance for resource-constrained mobile devices without requiring developers to manage low-level graphics APIs directly. Early versions emphasized simplicity, with v0.7 (released in 2009) introducing foundational support for actions—such as movement, rotation, and scaling—and scene transitions, allowing developers to build interactive prototypes with minimal . The framework included integration with the from early releases, enabling realistic simulations of collisions, , and essential for platformers and physics-based games. Hosted on after an initial stint on Code, Cocos2d-iphone experienced rapid community growth, amassing approximately 140 contributors and over 2,600 commits by the v1.0 milestone in 2011, reflecting broad engagement from developers worldwide. This open-source momentum fostered a vibrant ecosystem of tutorials, extensions, and bug fixes, solidifying its role as an accessible entry point for game development. The framework's adoption surged among developers, powering numerous titles in the late and early , such as physics-driven adventures and puzzle games that showcased its efficiency for 2D content. This popularity helped shape broader trends in mobile 2D design, emphasizing lightweight, cross-toolkit compatibility and community-driven evolution over alternatives.

Cross-Platform Expansion

Cocos2d-x was launched on December 1, 2010, as a C++ port of the original Cocos2d-iphone framework, specifically developed to extend support beyond to platforms including , , , and others, enabling cross-platform 2D game development. This iteration addressed the growing demand for multi-platform tools in the early mobile gaming era, allowing developers to write once and deploy across diverse operating systems with minimal modifications. Key version milestones marked significant enhancements: Cocos2d-x 2.0, released in 2012, introduced Lua bindings to facilitate scripting and ; version 3.0 in 2014 overhauled the architecture for better modularity and performance; and 4.0 in December 2019 emphasized stability, including Metal rendering support for Apple platforms. Technical shifts during this period included the adoption of for cross-platform builds starting in version 3.17 around 2018, simplifying compilation across environments, alongside the default integration of and physics engines to provide robust 2D simulation capabilities out of the box. Chukong Technologies, which rebranded and spun off its engine division to Yaji Software (operating under the Cocos brand), became the primary sponsor of Cocos2d-x in 2012, investing in the project and funding full-time development to sustain its open-source ecosystem. This corporate backing propelled widespread adoption, particularly in , where the framework powered numerous commercial titles. As of 2025, Cocos2d-x version 3.x continues to serve as a stable foundation for many projects, achieving 99.7% compatibility with devices in based on test data, though major updates have been minimal since the 2019 release of 4.0, with community forks handling ongoing maintenance.

Transition to Visual Tools

In 2016, Cocos Inc. released Cocos Creator as a significant of the Cocos2d ecosystem, building upon the Cocos2d-x engine while introducing a comprehensive (IDE) to streamline game creation. This marked a pivotal shift toward visual tools, enabling developers to construct scenes and assets through an intuitive interface rather than solely relying on code. The initial version, 1.0, launched in March 2016 and focused primarily on workflows, with subsequent updates like 1.2.1 in August enhancing stability and features for JavaScript-based projects. Key advancements in Cocos Creator included a transition to and scripting for more accessible and maintainable code, a node-based visual scene editor that allowed drag-and-drop assembly of game elements, and foundational support for both and emerging workflows. The design goals emphasized reducing through visual prototyping, empowering non-programmers with drag-and-drop functionality, and preserving high performance for mobile deployments. arrived in August 2018, laying groundwork for integration, which was fully realized in 2.1 later that year with features like model rendering, cameras, and skeletal animations. By 3.0, released in February 2021 following a December 2020 preview, the engine adopted an advanced Entity-Component-System (ECS)-like architecture for better scalability and performance in complex scenes. The progression continued with versions up to 3.8 in 2024-2025, which enhanced support for / applications through dedicated XR components and extended into automotive integrations like smart solutions for in-vehicle HMIs and visualizations. In 2025, Cocos was acquired by the company SUD for $72 million, which is developing a cloud platform for gamifying applications. As of 2025, Cocos remains under active development by Cocos Inc., boasting 1.7 million registered global developers and holding approximately 40% in China's mobile gaming sector. This visual-centric approach has broadened accessibility while maintaining the engine's cross-platform efficiency, particularly for mobile and emerging .

Forks and Derivatives

The community has developed several forks and derivatives of Cocos2d to address specific needs, such as language bindings, platform adaptations, and continued maintenance after the mainline project's shifts in focus. These variants extend the framework's reach to , alternative scripting languages, and legacy systems while preserving core 2D rendering and scene management capabilities. Cocos2d-js, released in , serves as a JavaScript port of the Cocos2d-x engine, enabling cross-browser web game development with support. It integrates bindings for native platforms via the engine, allowing developers to write once and deploy to web, , and without major code changes. This derivative emphasizes rapid prototyping for browser-based titles, incorporating the same node-based architecture as the original while leveraging for rendering. An earlier web-focused adaptation, Cocos2d-html5, emerged around 2012 as a pure implementation based on Cocos2d-x, targeting environments without native dependencies. It provided a lightweight entry point for browser games, supporting features like animations and touch events through canvas or backends, though it required manual optimization for performance on older devices. For scripting flexibility, Cocos2d-lua bindings were integrated into Cocos2d-x starting with version 3.0 in 2014, allowing as the primary language for game logic while retaining C++ for performance-critical components. This approach highlights 's lightweight syntax for rapid iteration on behaviors and UI, with automatic binding generation via tools like tolua++ to bridge Lua scripts with the underlying engine. It became popular for mobile titles needing hot-reloading during development. Among notable forks, the Axmol Engine originated in November 2019 as a continuation of Cocos2d-x version 4.0, addressing the mainline's stagnation after the pivot to Cocos Creator. Developed by a community team, Axmol introduces C++17 support, enhanced rendering with OpenGL ES 3.0 and Metal, and optimizations yielding up to 40% better performance in benchmarks compared to its predecessor. As of 2025, it remains actively maintained, appealing to C++ developers seeking a code-first workflow without visual editor dependencies, and supports platforms including iOS, Android, Windows, and WebAssembly. Language-specific bindings further diversify the ecosystem. CocosSharp, a .NET port introduced by in 2014, adapts Cocos2d for C# and F# development, targeting Xamarin projects for cross-platform mobile and desktop apps. It derives from Cocos2D-XNA, enabling integration with for shared libraries in portable class libraries (PCLs). Partial Java bindings exist within Cocos2d-x for , facilitating native workflows alongside C++ code. For legacy iOS support, community forks of Cocos2d-objc maintain compatibility with older projects, preserving features like chipmunk physics on pre-Swift environments. These forks and bindings have prolonged Cocos2d's relevance, particularly for developers prioritizing programmatic control over visual tools, with Axmol exemplifying sustained innovation in 2025 for high-performance applications.

Core Components

Sprites and Rendering

In Cocos2d, the serves as the foundational component for rendering images and textures, inheriting from the to enable positioning, , and within a . It initializes with various formats such as PNG, JPEG, or TIFF files, or directly from a Texture2D object, allowing developers to display static or dynamic visual elements efficiently. In Cocos Creator, the component extends this by providing a dedicated rendering tool that reads color data from image resources for backgrounds, elements, or game objects. To optimize performance, especially in scenarios with numerous , Cocos2d employs batch rendering through the SpriteBatchNode class, which groups multiple children sharing the same into a single draw call, significantly reducing overhead on mobile devices. This batching mechanism relies on atlases, where individual images are packed into a single larger to minimize state changes during rendering; in later versions like Cocos2d-x v3 and beyond, automatic batching is handled by the renderer to further streamline draw calls without manual intervention. added to a SpriteBatchNode must be subclasses of and share uniform or settings, ensuring consistent rendering properties across the batch. The rendering pipeline in Cocos2d variants primarily utilizes for mobile platforms and for desktops, enabling hardware-accelerated 2D graphics with support for transformations and opacity modifications. In more recent iterations, such as Cocos Creator 3.0 and later, the engine abstracts a unified GFX API layer that supports modern backends including Metal for and macOS, Vulkan for and broader cross-platform use, alongside fallbacks to 1.0/2.0, GLES2, and GLES3 for compatibility with older hardware. This abstraction allows seamless transitions between APIs while maintaining a consistent rendering interface for sprites. Texture management in Cocos2d emphasizes efficiency through atlas packing, which combines multiple small s into one atlas to cut down on draw calls and texture switches, a practice facilitated by tools like TexturePacker integrated into the workflow. For mobile optimization, the engine supports compressed formats such as PVRTC for (offering 2-bit or 4-bit compression suitable for power-of-two textures) and ETC1/ETC2 for , which reduce memory footprint and loading times without significant quality loss, particularly beneficial for sprite atlases. These compressions are applied automatically during asset import in Cocos Creator, ensuring GPU-friendly data submission. Sprites in Cocos2d support through blending functions, where alpha channels enable and via configurable BlendFunc properties, such as source and destination factors for additive or multiplicative blending. Tinting is achieved by modulating the sprite's color with RGB values, allowing dynamic hue adjustments without altering the base , as seen in methods like setColor in Cocos2d-x. For advanced , shader integration permits developers to apply GLSL-based effects directly to sprites, supporting post-processing like gradients or custom lighting while leveraging the engine's effect system in Cocos Creator. The evolution of sprite handling in Cocos2d traces back to its origins as a framework in 2005, where basic rendering was implemented from scratch for simple games without advanced batching. By 2008, with the iOS-focused Cocos2d-iphone and subsequent Cocos2d-x ports, sprites gained batched rendering via SpriteBatchNode to address performance on resource-constrained devices, introducing texture atlases and integration. In Cocos Creator, introduced around 2016 as an evolution of Cocos2d-x, sprite management shifted toward visual tools, allowing drag-and-drop import of assets with automatic compression and rendering mode selection (e.g., sliced or tiled), streamlining development for cross-platform visuals.

Scenes and Nodes

In Cocos2d, the scene graph is structured as a hierarchical tree of nodes, enabling developers to organize game elements efficiently. The Node class serves as the foundational entity, representing any object in the scene with properties such as position, rotation, and scale, which define its transform in local and world coordinates. Nodes support a parent-child relationship, allowing them to form a tree structure where transformations are inherited from parents to children through methods like updateWorldTransform, facilitating complex hierarchies for game worlds. The class extends to act as the root container for a complete game level or environment, encapsulating all child nodes and assets required for a runnable instance. As the top-level node, it provides a self-contained structure managed by the engine, with properties like autoReleaseAssets to handle resource cleanup upon unloading. Scene transitions, such as fade or slide effects, are facilitated through specialized actions applied during replacement, where the singleton orchestrates the switch by pushing or popping scenes on a . The Director singleton maintains the overall scene stack, enabling structural operations like replacing the current scene with a new one via runScene or loadScene, while preserving persistent nodes across transitions. It also supports pausing and resuming the scene hierarchy to manage global state without altering the node tree itself. For organization, the Layer concept introduces transparent container nodes or bitmask properties that group elements, such as separating UI overlays from gameplay objects to control rendering and interaction layers independently. In Cocos Creator, the visual node editor—via the panel—allows drag-and-drop assembly of node , streamlining the building of scene trees by visually arranging parents, children, and components.

Director and Scheduling

The class serves as the central coordinator in Cocos2d, managing the game's main window, scene transitions, and the overall rendering loop. It initializes the context, handles buffer depth settings (defaulting to 0-bit), and oversees the execution of scenes by drawing them in the drawScene() method. The maintains a consistent , typically set to 60 through the setAnimationInterval() method, where the interval determines the as 1 divided by the interval value, ensuring smooth updates via the mainLoop(float dt) function introduced in version 3.16. Projection modes are configurable via the setProjection() method, supporting 2D (_2D), (with default field of view at 60 degrees, near plane at 0.5, and far plane at 1500), custom (CUSTOM), or default 3D (DEFAULT) projections to accommodate various rendering needs. Device orientation is managed through coordinate conversion utilities like convertToGL() and convertToUI(), allowing adaptation to different screen orientations without disrupting the . The also tracks total frames rendered with getTotalFrames() and retrieves the current running scene using getRunningScene(), facilitating runtime control such as pausing or replacing scenes. The Scheduler class complements the by handling timed operations and callbacks essential for game logic, explicitly discouraging the use of system timers in favor of its integrated mechanisms to ensure with the . It schedules callbacks at specified s (in seconds), with options for delays, repeats (where the total executions equal repeat count plus one), and immediate execution if the is zero, triggering updates every when needed. Callbacks can be update selectors invoked per with configurable priorities via scheduleUpdate(), or custom selectors scheduled through schedule() for periodic tasks like animations or AI decisions. Pausing and resuming are supported at the target level—such as nodes or scenes—using pauseTarget() and resumeTarget(), which suspend or restore all associated callbacks without affecting the global loop, making it ideal for scenarios like menu overlays or level pauses. Unscheduling removes specific callbacks with unschedule() or clears all for a target, while methods like isTargetPaused() allow querying status to maintain precise control over timing in dynamic game states. In Cocos Creator, the Scheduler extends these features with a more script-friendly API, including timer components for /JavaScript integration. The action system provides a for applying temporal transformations to , enabling finite or infinite sequences that alter properties like or over time. Finite actions, such as MoveTo (which relocates a to a point in a fixed duration) or RotateBy (which increments by a specified angle), execute once and complete automatically, while infinite variants like RepeatForever loop indefinitely until stopped. These actions are initiated by calling runAction() on a , such as a , allowing sequential or parallel compositions for basic movements without manual frame-by-frame coding. Event dispatching routes user inputs through the EventDispatcher, a that subscribes and propagates touch, mouse, and keyboard events across the hierarchy. Listeners are added with priority via addEventListenerWithSceneGraphPriority(), ensuring events bubble or capture based on node traversal, or with fixed priority for custom ordering, facilitating input handling like gestures or key presses directly on interactive nodes. The dispatcher pauses or resumes listeners per target with pauseEventListenersForTarget(), maintaining consistency during state changes, and supports custom events via dispatchCustomEvent() for internal game signaling. Across variants, these mechanisms remain consistent in core Cocos2d-x, where they form the runtime backbone in C++, while Cocos Creator extends them with visual timeline editors for actions and enhanced event scripting in /, preserving the Director's loop management and Scheduler's timing for cross-platform development.

Features

Animation Systems

Cocos2d's animation systems provide flexible mechanisms for animating properties and sprite sequences, evolving from programmatic actions in early versions to visual keyframe editing in modern tools like Cocos Creator. Action-based animations form the core, allowing developers to create sequences of transformations such as movement, rotation, scaling, and opacity changes on . These actions are finite-duration operations applied via the runAction method, enabling smooth between start and end states. In Cocos2d-x, basic actions include MoveTo for absolute position changes and MoveBy for relative offsets, both specifying duration and target values. For opacity, FadeIn and FadeOut adjust transparency from 0 to 255 or vice versa over time. Composition actions like Sequence chain multiple actions sequentially, such as moving a node followed by fading it out, while Spawn executes them in parallel for concurrent effects. Easing actions, such as EaseIn and EaseOut, modify the timing curve to accelerate or decelerate motion, enhancing realism. For example, a Sequence combining MoveBy and FadeOut might be implemented as node->runAction(Sequence::create(MoveBy::create(1.0f, Vec2(100, 0)), FadeOut::create(1.0f), nullptr));. Frame animations in Cocos2d-x utilize the Animate action to play sprite sheet sequences, replacing textures at specified intervals for flipbook-style playback. Developers preload frames via SpriteFrameCache and create an Animation object with a vector of frames, then wrap it in Animate for runtime execution, optimizing draw calls through batching. This approach supports texture flipping by cycling through atlas coordinates, suitable for character idles or attacks. Cocos Creator extends these with a Tween system, a chainable API for programmatic animations that replaces traditional actions in version 3.x. Tween supports .to() for absolute changes and .by() for relatives, applied to properties like and opacity; for instance, tween(node).to(2, { position: v3(300, 200, 0) }).start(); moves a over 2 seconds. Sequences use .then() or .sequence(), while parallel execution employs .parallel(), and easing options like 'sineOut' provide non-linear interpolation. Performance relies on for basic smoothness, computed as t = \frac{\text{time}}{\text{duration}}; \text{value} = \text{start} + (\text{end} - \text{start}) \times t, ensuring efficient updates per frame. In Cocos Creator, the Animation Clip editor enables visual creation of keyframe-based animations, supporting curves for properties like and scale. Developers add tracks for attributes, set keyframes with bezier editors for custom easing, and preview clips directly. Blending occurs via the Graph, mixing clips with weights for transitions like idle-to-run. State machines manage clip playback logic, defining and transitions based on conditions such as . Frame animations integrate seamlessly, with frames dragged to tracks and intervals adjusted via toolbar settings for even distribution. Skeleton animations leverage integration with the runtime, allowing import of or binary assets from the Spine editor for 2D skeletal . The Skeleton component handles playback, blending multiple animations (e.g., walk and shoot), and attachment swapping for modular characters, rendering via GPU-efficient meshes. This supports complex deformations without keyframing every bone, ideal for high-fidelity games.

User Interface Components

Cocos2d provides a range of (UI) components designed to facilitate the creation of interactive elements in games and applications, supporting both programmatic and visual development workflows across its variants. These components enable developers to build responsive interfaces using nodes such as buttons, labels, scroll views, and layouts, which handle positioning, rendering, and user interactions efficiently within the engine's . In Cocos2d-x, UI elements are primarily managed through the cocos2d::ui namespace, offering low-level control for C++ developers, while Cocos Creator introduces a more declarative approach with drag-and-drop components integrated into its visual editor. Core UI nodes include the , which responds to user clicks by triggering callbacks and supporting states like normal, pressed, and disabled; the , for displaying text with customizable fonts and styles; the ScrollView, a container that allows scrolling content larger than its visible area via touch or mouse input; and the , which automates child node positioning using modes such as absolute (fixed coordinates) or relative (proportional to parent size). In Cocos2d-x, manual positioning is common, with buttons often grouped using CCMenu for creation, where items are aligned explicitly via code to ensure precise control over layout. Conversely, Cocos Creator employs a UICanvas (rooted under the component) with Widget alignment for automatic adaptation, allowing s to dock to edges or centers of the parent without manual coordinate calculations. Event handling for UI components relies on touch callbacks to detect interactions like clicks, drags, and releases, integrated into the engine's event dispatcher system for efficient propagation. Developers register listeners for events such as TOUCH_START, TOUCH_MOVE, and TOUCH_END on specific nodes, enabling custom responses like state changes or , with support for in environments. Adaptive scaling ensures UI elements maintain proportions across resolutions, using Canvas modes like Fit Width or Fit Height to adjust the design resolution dynamically to the device's , preventing distortion on varied screen sizes. Theming capabilities enhance UI aesthetics and feedback, with font rendering supporting Bitmap Fonts (BMFont) for pre-generated, performance-optimized text atlases ideal for stylized labels, and TrueType Fonts (TTF) for scalable, dynamic text that adjusts to different sizes without quality loss. Color schemes are applied via component properties, allowing tinting of buttons and labels for consistent themes, while particle effects can provide visual feedback such as glows or bursts on interactions, integrated as child nodes under UI elements for seamless rendering. Cross-device compatibility addresses modern mobile challenges through DPI scaling, where UI components automatically adjust based on via resource suffixes (e.g., @2x for high-DPI screens), ensuring crisp visuals on diverse hardware. Safe area handling accommodates notches and cutouts prevalent in 2024-2025 smartphones, with the SafeArea component constraining layouts to usable screen regions, preventing overlap with device features like those on models or flagships.

Physics Integration

Cocos2d provides robust support for physics through integration with established engines, enabling realistic simulations of rigid bodies, joints, and collisions in game development. In Cocos2d-x, the built-in physics system primarily utilizes as the default engine, though is supported as an alternative via configuration options in the engine's build settings. Similarly, Cocos Creator employs as its core physics module, offering seamless compatibility for cross-platform projects. These engines handle core mechanics such as , , and responses, allowing developers to create dynamic interactions without low-level implementation. To set up physics in Cocos2d, developers attach a PhysicsBody component to scene nodes, defining physical properties like mass, velocity, and body type (static, dynamic, or kinematic). Collision shapes—such as boxes, circles, polygons, or edges—are then assigned to the PhysicsBody, with fixtures specifying material properties like density, restitution, and friction for precise collision behavior. Sensors can be configured via fixtures with zero density to detect overlaps without physical response, facilitating trigger-based events in gameplay. This node-centric approach integrates physics directly with the rendering hierarchy, ensuring synchronized updates between visual elements and simulations. In Cocos Creator, enabling the PhysicsSystem2D component in the project settings initializes the world with configurable gravity (defaulting to 0 in x and -10 in y). The physics simulation operates on a fixed timestep to maintain consistency across varying frame rates, typically set to 1/60th of a second, with the engine handling iterative constraint solving for stability. and both employ constraint-based solvers to resolve collisions and joints, supporting types like revolute, distance, and weld joints for complex mechanisms such as ragdolls or vehicles. For physics in Cocos Creator, the system supports (via Ammo.js) as the default engine for and collisions, with .js available as a alternative for simpler scenarios. These engines extend the model by adding support for meshes, convex hulls, and basic raycasting, though they focus on foundational interactions rather than advanced features like soft bodies. Debugging tools enhance efficiency, with visual debug enabled through the physics manager to render outlines of , shapes, and points in real-time. This mode, toggleable in the editor or via code, aids in verifying collision setups and simulation accuracy. Additionally, listeners—implemented as callbacks on the —allow developers to respond to events like begin, end, or pre-solve contacts, enabling custom logic for effects such as particle bursts or sound triggers without altering core simulation. These features ensure reliable integration, as demonstrated in platformers where precise constraints maintain stability during jumps.

Audio Management

Cocos2d supports audio playback for sound effects and across its variants, using platform-agnostic APIs for cross-platform compatibility. In the original Python-based Cocos2d, audio is handled through integration with Pygame's mixer module, allowing simple loading and playback of and OGG files with controls for volume, looping, and channels. Cocos2d-x provides the SimpleAudioEngine for basic operations like playing effects (playEffect) and (playBackgroundMusic), supporting formats such as , , and OGG, with features for pausing, resuming, and setting volume; for more advanced use, the AudioEngine offers asynchronous loading, multiple simultaneous instances, and audio profiles for gain and pitch adjustments. Cocos Creator provides robust audio management capabilities through its AudioSource component, which enables developers to handle sound effects (SFX) and background music playback within game scenes. AudioSource is attached to nodes and supports basic operations such as play, stop, pause, and resume, making it suitable for simple SFX triggering and looping background tracks. For instance, background music can be set to loop indefinitely via the loop property, ensuring continuous playback during gameplay. The engine supports common audio formats including , , and OGG, imported as AudioClip assets in the editor. These AudioClip resources include configurable properties like volume (ranging from 0.0 to 1.0) and pitch (from 0.5 to 2.0), allowing fine-tuned control over audio output without additional scripting. This setup facilitates immersive experiences by adjusting sound intensity and speed directly in the asset pipeline. For advanced immersion, Cocos Creator incorporates spatial audio features via the AudioSource3D variant, which positions sounds in space relative to the listener for directional effects. This is particularly useful in scenes, where audio directionality enhances realism based on positions. Integration with engine actions, such as using cc.tween for fade-in and fade-out transitions, allows smooth volume changes over time, improving audio polish. -driven playback is also supported, enabling sounds to trigger on specific occurrences like collisions through event . Performance considerations are addressed through object pooling mechanisms for AudioSource instances, which reuse audio objects to handle multiple simultaneous SFX without excessive . This approach is crucial for platforms, where the optimizes for low-latency playback to minimize delays in responsive audio cues. Such optimizations ensure efficient handling of dynamic soundscapes in resource-constrained environments.

Scripting Languages

Cocos2d, in its original incarnation, utilizes as its primary , enabling developers to implement game logic through pure Python code. The framework's director acts as a that manages transitions and , while actions—such as movements, rotations, and scaling—form a core part of the API for animating nodes and sprites without requiring external libraries. This Python-centric approach allows for straightforward prototyping of 2D games and interactive applications, leveraging for hardware-accelerated rendering on platforms like Windows, OS X, and . In the Cocos2d-x variant, C++ serves as the native language for optimal performance in resource-intensive applications, providing direct access to engine components like rendering and physics. To facilitate scripting, Cocos2d-x incorporates bindings for and , allowing developers to write game logic in these higher-level languages while retaining C++'s efficiency for critical paths. Lua bindings are generated using tolua++, a tool that automates the integration of and functions into Lua scripts, enabling seamless calls between the two. JavaScript bindings, on the other hand, rely on the engine, Mozilla's JavaScript runtime, which exposes the full C++ for browser-compatible scripting and cross-platform deployment. Cocos Creator shifts the focus to and for its component-based architecture, where scripts attach to nodes as reusable components to define behaviors like input handling and . , as a typed superset of JavaScript, compiles to standard JavaScript and integrates directly into the editor, supporting features like hot-reloading for immediate script updates during development without restarting the preview. This setup promotes modular, maintainable code for 2D and projects, with the engine handling compilation and type checking natively. The binding mechanisms across Cocos2d variants emphasize by providing quick exposure of the core , such as nodes, scenes, and actions, without manual boilerplate. In Cocos2d-x, tolua++ and generate comprehensive wrappers that map nearly the entire C++ interface to or , allowing scripters to override methods or extend classes efficiently. Similarly, Cocos Creator's system offers full introspection and auto-completion in the editor, streamlining iteration from prototype to production. These bindings ensure between scripted logic and native performance, with minimal overhead for common operations like event dispatching. As of 2025, has emerged as the preferred scripting language for web and mobile development in Cocos Creator, driven by its strong typing and ecosystem support for cross-platform exports, while C++ remains dominant in Cocos2d-x for high-performance PC and embedded applications requiring low-latency rendering. This trend reflects broader industry shifts toward typed for scalable mobile games and C++ for optimized desktop titles, with Cocos2d-x retaining popularity in frameworks lists for its mature cross-platform capabilities.

Development Tools

Built-in Editors

serves as the primary built-in editor for Cocos2d development, functioning as an all-in-one () that facilitates visual content creation without requiring extensive coding for basic setups. It includes a dedicated panel where developers can select and arrange game elements such as images, characters, , and components in a hierarchical structure, enabling intuitive scene building and real-time previewing. The editor also features an animation timeline for creating keyframe-based animations, supporting properties like position, rotation, scaling, and opacity, along with custom events and easing curves for precise control over motion sequences. Additionally, particle systems can be designed directly within the inspector panel when a ParticleSystem component is added to a node, allowing adjustments to emission rates, shapes, velocities, and rendering modes to simulate effects like fire, smoke, or explosions. For projects based on Cocos2d-x, the framework adopts a code-centric approach without a full visual , relying instead on external code editors for development. Built-in tools include the Cocos (CLI), which supports creating, running, and deploying applications across platforms, as well as a console for inspection and error during or native builds. Official recommendations emphasize using (VS Code) as the preferred external , with extensions and configurations provided for , intelligent , and browser-based integrated via the Cocos workflow. The asset pipeline in Cocos Creator streamlines resource management through automated importers that handle various file types upon dragging them into the Assets panel. Sprites are imported as Texture2D assets, which can then be converted to SpriteFrame resources for and graphics rendering, supporting trimming, slicing, and multiple atlas references. Audio files in formats like , OGG, and are imported directly, generating AudioClip assets compatible with the AudioSource component for playback control. Prefabs are created and imported as reusable hierarchies, preserving components, properties, and child structures for efficient instantiation in scenes. Auto-atlasing further optimizes performance by automatically packing multiple sprite s into sprite sheets during the build process, reducing draw calls and texture switches while maintaining original asset references in the editor. Cocos Creator projects are designed for compatibility with systems like , allowing developers to track changes in scripts, assets, and scenes through standard repository practices, with recommendations to exclude build outputs from commits to avoid unnecessary bloat. This facilitates collaborative development by enabling branching, merging, and pull requests on platforms such as , integrated via external tools like VS Code.

External Tooling

Third-party tools play a crucial role in extending Cocos2d's capabilities, particularly for asset creation and optimization in game development workflows. These external integrations allow developers to leverage specialized software for complex tasks like animation, level design, and physics setup, which can then be seamlessly imported into Cocos2d-x or projects. One prominent example is , a 2D tool developed by Esoteric Software, which integrates directly with Cocos2d for runtime animation playback. Spine enables the creation of bone-based animations exported in or binary formats, supported natively in through the sp.SkeletonAnimation component for rendering and state management. In Cocos2d-x, the integration uses similar runtime classes to handle skeleton updates and world transforms, allowing for efficient animation blending and control within scenes. This compatibility streamlines the process of importing professional-grade skeletal animations without custom coding for bone hierarchies. For level design, the Tiled Map Editor provides robust compatibility with Cocos2d by exporting maps in TMX format, which can be loaded directly into projects for tile-based environments. Cocos Creator's TiledMap component supports importing these TMX files, including layers, objects, and properties, to facilitate quick prototyping of 2D worlds with collision data and animations. Similarly, Cocos2d-x's CCTMXTiledMap class handles TMX parsing for , C++, and other variants, enabling developers to design intricate maps with custom tilesets and import them for runtime rendering. This integration is essential for efficient iteration in platformers and RPGs, as Tiled's XML structure aligns closely with Cocos2d's node-based architecture. TexturePacker, from CodeAndWeb, optimizes sprite atlas creation specifically for Cocos2d's batching systems, reducing draw calls and improving performance in resource-intensive games. It packs multiple s into single textures with metadata in formats like or plist, which Cocos2d-x loads via SpriteFrameCache for seamless animation sequences and elements. For Cocos , TexturePacker generates atlases that integrate with the Atlas asset , supporting features like trimming and to minimize memory usage while preserving structures for multi-device . Tutorials demonstrate how these atlases enhance sprite sheet animations in both engines, making it a standard tool for asset optimization. Physics editors such as PhysicsEditor further enhance Cocos2d's integration by allowing visual creation of collision shapes for sprites. This tool exports polygon data in plist format, which developers load into Cocos2d-x using custom loaders to attach fixtures to PhysicsBody instances, ensuring accurate simulations for rigid bodies and joints. In , similar exports support the built-in system for 2D physics, enabling precise shape definitions that outperform auto-generated bounding boxes in complex scenarios like vehicle physics or destructible environments. PhysicsEditor's optimization algorithms help reduce computational overhead in Cocos2d projects relying on for realistic interactions. As of 2025, the Cocos2d ecosystem has evolved with enhanced support, including integrations for Cocos2d-x that streamline compilation and debugging through project templates and build tools compatible with recent versions of . For , the functions as a Unity-like asset , offering plugins such as quick-plugin for rapid extension development and code tools, available for purchase or free download to extend editor functionality without manual configuration. These resources, updated through community contributions, foster a plugin-driven akin to major engines, boosting productivity for cross-platform deployments.

Asset Management

Asset management in Cocos Creator, the primary development environment for the Cocos2d engine (version 3.8.7 as of August 2025), encompasses the lifecycle of game resources from loading to optimization and deployment, ensuring efficient handling of assets like images, audio, scripts, and models. The Asset Manager module serves as the core system, providing APIs for asynchronous resource loading to avoid blocking the main thread during . Developers can use methods such as assetManager.loadAny to fetch assets dynamically, with built-in caching that retains loaded resources in memory for quick reuse until manually released via assetManager.releaseAsset to manage memory effectively. For modular builds, Asset Bundles allow grouping related assets into self-contained packages, configurable in the Build panel with custom names and priorities (ranging from 1 to 100 for loading order), enabling selective loading through assetManager.loadBundle to support scalable project structures and reduced initial download sizes. Optimization techniques focus on reducing asset footprints and runtime overhead. Textures undergo compression during the build process using platform-specific formats, including PVRTC for devices to achieve efficient mobile performance, ETC2 for broad compatibility, and ASTC for flexible, high-quality results, which can significantly reduce file sizes while minimizing GPU memory demands. In projects, model (LOD) implementation leverages the LOD Group component, which automatically switches between imported variants (e.g., sub-meshes named _lodN) based on screen distance, thereby optimizing polygon counts and rendering efficiency in expansive scenes without manual scripting. Audio assets benefit from import as AudioClip components supporting formats like and OGG, with optimization achieved through external trimming of silence and to streamline playback via the AudioSource component. Prefabs enhance reusability by encapsulating complex node hierarchies—including components, positions, and properties—as single assets, which can be instantiated rapidly in scenes either via drag-and-drop in the editor or programmatically with instantiate(prefabAsset) for dynamic generation of elements like panels or enemies. This approach ensures consistency across instances while allowing overrides for customization, streamlining development workflows. The build pipeline integrates asset processing into platform-specific exports, where settings in the Build panel dictate compression types (e.g., for bundles), resolution adaptations, and orientation handling for targets like , , and . Script minification is enabled by default in these exports, compressing code to minimize file sizes and accelerate loading times across deployments. Creator's Resource Manager tool oversees asset dependencies by automatically scanning and resolving references during imports and builds, displaying them in the Assets panel to avoid orphaned resources and ensure integrity. For ongoing maintenance, it facilitates hot-updates by leveraging Asset Bundles with version manifests, allowing incremental remote downloads via AssetManager APIs without requiring full app reinstalls, ideal for fixing bugs or adding content post-launch.

Platforms and Languages

Target Platforms

Cocos2d, encompassing variants such as Cocos2d-x and Cocos Creator, primarily targets mobile platforms for high-performance 2D and 3D content delivery. It supports 8.0 and later via Cocos2d-x, and 11.0 and later via Cocos Creator, enabling deployment on a wide range of Apple devices with native integration. For , Cocos2d-x accommodates devices running version 3.0 and above, while Cocos Creator supports version 5.1 (API level 22) and above; Cocos2d-x achieves compatibility across 99.7% of Android devices in through optimized builds. integration, available since Cocos Creator 3.2, allows one-click packaging into .hap files for Huawei's ecosystem, broadening reach in distributed device environments. Desktop environments form another core target, facilitating development and native application deployment. (64-bit) and subsequent versions are fully supported, providing robust tooling for PC gaming and simulations. macOS 10.9 and later offer seamless integration with Apple's ecosystem, including Metal rendering backend for enhanced graphics. support, particularly 16.04 and newer distributions, enables runtime execution via Cocos2d-x, though the Cocos Creator editor remains optimized for Windows and macOS.
Platform CategorySpecific TargetsKey Features/Notes
MobileiOS 8.0+ (Cocos2d-x); 11.0+ (Cocos Creator)Native App Store deployment; Metal backend.
MobileAndroid 3.0+ (Cocos2d-x); 5.1+ (Cocos Creator)99.7% device coverage via Cocos2d-x in China; GLES/Vulkan support.
MobileHarmonyOS (Cocos Creator 3.2+).hap packaging; distributed app support.
DesktopWindows 7+ (64-bit)DirectX/Vulkan backends; editor and runtime.
DesktopmacOS 10.9+Metal acceleration; full editor compatibility.
DesktopLinux (Ubuntu 16.04+)Runtime via Cocos2d-x; GLES/OpenGL.
Web deployment leverages standards, with as the primary renderer for hardware-accelerated performance across modern browsers like and . A fallback ensures on legacy or low-end devices without WebGL support, maintaining broad compatibility. Cocos Creator supports as a rendering backend since version 3.6.2 (2022), with full integration available as of version 3.8.5 (2024), significantly improving web performance through advanced compute shaders and reduced overhead on supported platforms. For emerging technologies, Cocos2d extends to and via Cocos Creator's XR capabilities, including deployment to headsets and for browser-based immersive experiences. This enables real-time 3D interactions without platform-specific overhauls. In the automotive sector, Cocos Runtime powers smart cockpit applications, supporting in-vehicle HMIs, ADAS visualizations, and interactive entertainment on systems like , , and .

Programming Languages

Cocos2d originated as a -based in , designed for rapid 2D game prototyping and development, particularly suited for educational and experimental projects due to Python's simplicity and readability. The original implementation emphasized ease of use for beginners while providing core features like scene management and sprite handling. The ecosystem evolved with platform-specific adaptations, including bindings for and macOS through Cocos2D-ObjC, a that translated the Python design into native Apple environments for building 2D games and interactive applications. This legacy support enabled direct integration with iOS SDKs, though it has largely been superseded by more modern cross-platform options. Cocos2d-x, the primary cross-platform iteration, centers on C++ as its core language for performance-critical components, offering a lightweight, open-source foundation for 2D games across mobile, desktop, and consoles. It includes bindings for and , allowing developers to script game logic without deep C++ knowledge; Lua provides concise syntax for rapid iteration, while JavaScript enables web-friendly extensions. For web deployment, Cocos2d leverages natively via Cocos2d-JS, and compiles C++ code to , facilitating browser-based ports of native projects with minimal performance loss. This approach supports seamless integration of C++ backends into JavaScript frontends, as seen in hybrid applications where Emscripten-generated modules handle rendering and physics. Cocos Creator, the contemporary editor-focused variant, prioritizes and for scripting, with preferred for its static typing and support to enhance code maintainability in larger projects. It employs JSB (JavaScript Bindings) to bridge JavaScript/ frontend logic with an underlying C++ backend for native performance on mobile and desktop platforms. This multi-language setup allows mixing high-level scripting with low-level optimizations, such as delegating computationally intensive tasks like physics simulations to C++.

Deployment Considerations

Deployment of Cocos2d-x applications involves platform-specific build systems to compile and package the game for target environments. For and macOS, developers use to manage builds, integrating the engine's C++ core with native APIs. Android builds leverage or scripts, allowing configuration of permissions, libraries, and generation. Desktop platforms such as Windows and utilize to generate project files compatible with or other , enabling cross-compilation without additional wrappers. Optimization is crucial for maintaining performance across devices, particularly in mobile scenarios where resources are limited. Techniques include batch drawing to combine multiple sprites into fewer calls, reducing draw calls ideally below 50 per frame to avoid CPU bottlenecks. Texture optimization involves using 16-bit formats like RGBA4444, compressing assets with tools such as or PVRTC, and resizing images to power-of-two dimensions to prevent unnecessary GPU processing. Code stripping can be applied via compiler flags like in C++ to minimize binary size, while delta updates facilitate live operations by patching only changed assets rather than full redeploys. targets for mobile builds typically aim for under to ensure smooth operation on mid-range hardware. Signing and distribution integrate with major app stores for secure release. iOS applications require provisioning profiles and code signing in Xcode before submission to the Apple App Store, ensuring compliance with guidelines on entitlements and notarization. For Android, keystores are used in Android Studio to sign APKs or App Bundles prior to uploading to Google Play, supporting features like in-app purchases and analytics. Desktop distributions often bypass stores, allowing direct sideloading via installers generated from CMake builds, though optional packaging with tools like Inno Setup provides user-friendly executables. Performance metrics guide deployment tuning, with draw calls kept under 1000 per frame on high-end devices but ideally below 50 for broader compatibility, as excessive calls can drop frame rates below 60 . Mobile memory usage should remain below 100 to prevent crashes on devices with 2 GB or less, monitored via platform profilers during testing. Security measures address vulnerabilities in cross-platform code. bindings benefit from obfuscation tools to scramble , deterring and asset extraction. In C++ implementations, anti-cheat hooks can be integrated to monitor runtime behavior, detecting modifications like memory tampering or unauthorized scripts through periodic integrity checks.

Notable Applications

Commercial Games

Cocos2d has powered numerous commercial successes in the mobile gaming space, particularly in titles that leverage its lightweight architecture for broad accessibility. The engine holds approximately 20% of the global market share, with even higher adoption in at around 40%, enabling developers to reach vast audiences through efficient deployment on diverse hardware. One seminal example is Badland (2013), a critically acclaimed side-scrolling adventure developed by Frogmind using Cocos2d-x. The game features atmospheric visuals, physics-based gameplay, and cooperative multiplayer elements, achieving over 100 million players worldwide across platforms. Its success demonstrated Cocos2d-x's capability for delivering polished, award-winning experiences on mobile devices, including optimizations that enhanced performance on ARM-based hardware. Another enduring hit is (2013) by RobTop Games, built with Cocos2d-x, which combines rhythm-based platforming with user-generated levels. The title has amassed tens of millions of downloads and fostered a dedicated , highlighting the engine's support for dynamic content creation and cross-platform stability. In recent years, Cocos has continued to drive high-profile releases, such as Top War: Battle Game (2021) by Topwar Studio, a title with army-merging mechanics that ranked in the top 10 on charts in multiple countries, and Hungry Shark Arena (2021) by , a multiplayer game that excelled as a top experience. In , Cocos powers a significant portion of the market, including mini-games tied to major titles like those from , contributing to over 2 billion users engaging with Cocos-enabled content globally. These include strategy and idle games such as Three Kingdoms: The Glory of Heroes (2021) by GM99, which features village-building mechanics and impressive graphics optimized for quick sessions. This dominance has enabled billions of play sessions, particularly through lightweight mini-game formats that run seamlessly on low-end devices prevalent in emerging markets. Cocos2d's performance advantages shine in mid-core games targeting low-end hardware, where features like auto-batching, , and caching ensure smooth frame rates without excessive resource demands. For instance, optimizations in Cocos2d-x have allowed titles like Badland to run faster on budget devices, reducing load times and enabling broader monetization through in-app purchases and ads in resource-constrained environments. This has been crucial for developers creating accessible, revenue-generating experiences in regions with high mobile penetration but varying device capabilities.

Educational and Demo Projects

Cocos2d-x provides a suite of official test samples that demonstrate core functionalities, including actions for animations and transitions, as well as physics simulations using integrated engines like or . These samples, available through the project's repository, cover scenarios such as node movements, color changes, and callback executions via actions, while physics tests illustrate , , and joint constraints in 2D environments. Developers can run these tests to explore engine capabilities without external dependencies, making them ideal for initial learning. In Cocos Creator, official templates and quick-start projects serve as educational entry points, particularly for platformers that incorporate physics-based jumping, collision handling, and character controls. The example-game-platformer repository on offers a complete, runnable project demonstrating scene management, input handling, and game states like win/lose conditions, which users can extend for custom prototypes. While RPG-specific templates are less formalized, the engine's modular examples for systems and trees in tutorial projects support genre exploration. The community contributes extensively through open-source repositories, such as the cocos2d-x-samples collection, which integrates third-party libraries for advanced features like networking and audio, fostering collaborative learning. Complementary resources include books like Learning Cocos2d-x Game Development by Siddharth Shekar, published by Packt in 2014, which guides beginners through cross-platform project setup, sprite management, and scene transitions using Cocos2d-x version 3.x. This text emphasizes practical exercises, such as building a simple shooter game, to build foundational skills in C++ or JavaScript bindings. Cocos Creator's support for AR and VR extends to educational prototypes, with official examples enabling the creation of applications for mobile devices that overlay interactive 3D models on real-world views. These AR templates, selectable during project initialization in versions 3.7.1 and later, demonstrate marker-based tracking and gesture interactions, suitable for school-based simulations like virtual dissections or historical reconstructions. Virtual character tools within the engine allow for animations and dialogue systems, often used in prototyping narrative-driven educational content. Online courses on platforms like provide structured tutorials for Cocos2d-x and , covering beginner-to-intermediate topics such as 2D game fundamentals, physics integration, and deployment. For instance, the "Cocos2d-x v3 C++ - Beginning Game Development" course teaches cross-platform setup and action scripting through hands-on projects targeting , , and desktops. Similarly, "Cocos Creator 2D Game Development Fundamentals" focuses on visual scripting and asset pipelines for efficient prototyping. These resources, updated as of 2025, attract aspiring developers by emphasizing practical outcomes over theoretical depth.

Industry Impact

Cocos2d has established a dominant market position in China's mobile game sector, capturing approximately 40% share in 2025 and powering a substantial portion of hyper-casual and mid-core titles. This prevalence stems from its lightweight design and cross-platform capabilities, which align well with the fast-paced development cycles of these genres, enabling studios to efficiently target the vast mobile audience. For instance, popular mid-core games like Idle Heroes have leveraged Cocos for their implementations, contributing to its widespread adoption in the region. The engine's open-source model has significantly influenced the game development landscape by popularizing free, accessible tools, paving the way for subsequent engines like and that emphasize similar principles of openness and efficiency. As the world's leading open-source , Cocos2d-x has empowered over 1.7 million developers globally, fostering in lightweight creation and reducing barriers for and mid-sized teams. In November 2025, Cocos was fully acquired by SUD, the world's largest gamification interactive platform, for $72 million, integrating its technology and team to enhance SUD's GI Cloud and advertising services while continuing to support the developer ecosystem. Despite these strengths, Cocos2d faces challenges from competitors like , which offers broader and multi-platform support, eroding its dominance in projects requiring advanced graphics. Additionally, the industry's shift toward experiences has diminished reliance on pure engines like Cocos2d, as developers increasingly migrate to hybrid tools for more immersive content. Looking ahead, Cocos is expanding beyond gaming through Cocos Creator into non-gaming applications, such as smart cockpits for automotive HMIs and interactive online education platforms, broadening its utility in digital content creation. This diversification positions the engine to tap into emerging markets like interfaces and vehicle , sustaining its relevance amid evolving development trends.

References

  1. [1]
    The history of Cocos2d in a glimpse - RETRO.MOE
    Apr 17, 2017 · At Chukong, we started by designing Cocos2d-x v3, which included the removal of Objective-C patterns from its code, the use of modern C++ APIs, ...Missing: Technologies | Show results with:Technologies
  2. [2]
    About Cocos2d-x
    Chukong Technologies, the creator and maintainer of this widely adopted open source game engine, has committed to updating the platform's core features and ...
  3. [3]
    Cocos - The world's top 2D&3D engine, game / smart cockpit /AR/VR/ virtual character / education
    ### Summary of Cocos Company History, Relation to Cocos2d, and Key Milestones
  4. [4]
    Cocos2d-x is a suite of open-source, cross-platform, game ... - GitHub
    Cocos2d-x is a multi-platform framework for building 2d games, interactive books, demos and other graphical applications.Issues · Actions · Activity · Wiki
  5. [5]
    Cocos2d: Past, Present and Future | PDF - Scribd
    It started as a Python game engine called Los Cocos in 2005 and was renamed cocos2d in 2008. Since then, cocos2d has expanded to support iPhone, Android, Mac, ...
  6. [6]
    Fun and Games in Python (Pycon PL Keynote) - Mauveweb
    Aug 25, 2017 · ... Ricardo Quesada and others started the “Los Cocos” Python game engine, a higher-level engine based on Pyglet. It was soon renamed Cocos2d.Missing: initial philosophy
  7. [7]
    Cocos2d Game Engine: History, Features, and Branches - MYCPLUS
    A 2D game engine for Python was developed in February 2008 in the village of Los Cocos by game developers Ricardo Quesada and Lucio Torre together with a few of ...
  8. [8]
    Python Game Engines: Building Engaging Games with Python
    May 16, 2023 · Cocos2d is another Python game engine that provides a simple way to create 2D games. Cocos2D. It offers many features, including a scene graph, ...
  9. [9]
    cocos2d - PyPI
    A framework for building 2D games, demos, and other graphical/interactive applications. Draws using OpenGL, which is hardware accelerated.
  10. [10]
    How to Build a Game with Python & Cocos2D - Codeloop
    Mar 14, 2023 · ... director import director from cocos.layer import Layer from cocos.sprite import Sprite ... Scene() scene.add(MyGame()) director.run(scene) ...Missing: initial | Show results with:initial
  11. [11]
  12. [12]
    Cocos2d: Bouncing Ball Example - permadi.com
    Apr 28, 2009 · Navigate into your Cocos2d distribution (wherever you extracted the Cocos2d sources into, mine is at Macintosh HD::cocos2d-iphone-0.7.1 folder.
  13. [13]
    Chipmunk2D Physics
    Chipmunk2D powers the rigid body dynamics of. Feed Me Oil, which reached top spot on the App Store. Chipmunk Pro is now free and open source
  14. [14]
    Happy 7th Birthday Cocos2d-x! - Cocos Forums
    Dec 1, 2017 · Seven years ago, we released the first version of Cocos2d-x on December 1, 2010. Today we are fortunate to have received a pre-A round of ...Missing: history | Show results with:history
  15. [15]
    Cocos2d-x - Mature, lightweight, open cross-platform solution
    Since 2011, Cocos2d-x has provided users with an open-source, stable, and easy-to-customize cross-platform game solution. The engine provides three ...Missing: history | Show results with:history
  16. [16]
    Cocos2d-x v4.0 Is Here!
    We'd like to share with you some of the bigger updates for the official launch of v4.0 from the RC. For the full developer notes, please view from our forum.
  17. [17]
    CMake support all platform build & prebuilt libs for cocos2d-x
    Jan 26, 2018 · I am working on the CMake build system for cocos2d-x, this is some introduction about what have done and what need to be done.Missing: adoption | Show results with:adoption
  18. [18]
    IPO prep: Chukong rebrands, formally absorbing Cocos2D-x as it ...
    Oct 10, 2013 · In addition to the rebranding, Chukong is also formalising its relationship with the Cocos2D-x cross-platform game engine. Previously Chukong ...
  19. [19]
    Cocos Creator 1.0.1 Released - GameFromScratch.com
    Apr 14, 2016 · Cocos Creator 1.0.1 Released. / News / April 14, 2016. Cocos Creator is an all in one open source JavaScript game engine and editor built over ...
  20. [20]
    Cocos Creator v1.2.1 released! - Announcements
    Aug 29, 2016 · We are excited to release version 1.2.1 of Cocos Creator. Cocos Creator is a new, unified, development tool that handles every step in the game ...Cocos Creator new dev tool?Cocos Creator v1.1.2 released! - AnnouncementsMore results from forum.cocosengine.orgMissing: initial | Show results with:initial
  21. [21]
    v2.1 Upgrade Guide · Cocos Creator
    Cocos Creator v2.1, adds support for 3D features such as: 3D model rendering, 3D Camera, 3D skeletal animation, and 3D point selection. The Cocos Creator editor ...
  22. [22]
    Cocos Creator 3.0 Preview Has Been Released!
    Dec 1, 2020 · Cocos Creator 3.0 Preview integrates all the original 2D and 3D products' functions, brings many major updates, and is the beginning of the new future of Cocos ...
  23. [23]
    Cocos Creator 3 Released - GameFromScratch.com
    Feb 8, 2021 · Cocos Creator 3 was just released. The free game engine now has complete 3D support in addition to the existing 2D features.
  24. [24]
    AR | Cocos Creator
    May 22, 2024 · Cocos CreatorXR extension allows you to create cross-platform Augmented Reality (AR) applications. You can add corresponding AR components to nodes in your ...
  25. [25]
    Cocos - The world's top 2D&3D engine, game / smart cockpit /AR/VR ...
    The world's top lightweight, efficient, cross-platform digital content development platform can meet different development needs for 3D, 2D, AR&VR and other ...Cocos2d-xDownload Now
  26. [26]
    Cocos2d-x: Game Engine for Cross-Platform Mobile Games - DhiWise
    Jul 9, 2025 · Cocos2d-x is a free, open-source game engine for building cross-platform mobile games. Using C++, Lua, or JavaScript, developers can create ...
  27. [27]
    cocos2d-x for JS - GitHub
    Cocos2d-JS is Cocos2d-x engine's JavaScript version that includes Cocos2d-html5 and Cocos2d-x JavaScript Bindings. It equips your game with cross-browser ...
  28. [28]
    Axmol Engine - GitHub
    Axmol Engine has iterated and improved over the Cocos2d-x v4.0 base. Now is faster and more capable, while staying lightweight. Check a comparative here.Made in Axmol · Discussions · Issues 4 · Pull requests 4
  29. [29]
    Helping You Build Great Games Through The Help Of Our Panda
    Feb 8, 2021 · We firstly built JavaScript binding for Cocos2d-x in 2012 with Zynga's contribution.
  30. [30]
    Cocos2d for Web Browsers. Built using JavaScript. - GitHub
    Cocos2d-html5 is a cross-platform 2D game engine written in JavaScript, based on Cocos2d-X and licensed under MIT. It incorporates the same high level api ...Missing: port | Show results with:port
  31. [31]
    cocos2d-html5 - NPM
    Jan 8, 2014 · Cocos2d-HTML5 core package. Latest version: 2.2.2, last published: 12 years ago. Start using cocos2d-html5 in your project by running `npm i ...<|separator|>
  32. [32]
    Lua Binding - Why Cocos2d-x
    Sep 11, 2015 · LuaStack is used to manager the operation on the lua_State,eg., push data onto the lua_State, execute the function depended on the lua_State.<|control11|><|separator|>
  33. [33]
    Axmol vs Cocos2d‐x - GitHub
    Jul 15, 2025 · This is a comparison between the latest versions of Cocos2d-x (v4.0) and Axmol Engine (2.7.1). Cocos2d-x v4.0, Axmol Engine 2.7.1. Languages, C ...
  34. [34]
    Introducing CocosSharp - Xamarin Blog
    Aug 12, 2014 · CocosSharp blends the power of the Cocos2D programming model with C# and the .NET Framework. Developers familiar with Cocos2D will feel ...Missing: binding | Show results with:binding
  35. [35]
    mono/CocosSharp - GitHub
    Mar 11, 2021 · CocosSharp is an easy to use library for simple games using C# and F#. It is a .NET port of the popular Cocos2D engine, derived from the Cocos2D-X engine via ...
  36. [36]
    Axmol | A Multi-platform Engine for Mobile, Desktop, WebAssembly ...
    Axmol is a fork of Cocos2d-x v4.0; Axmol is an engine with various low-level capabilities, like molecules in our real world; Axmol is a multi-platform engine ...
  37. [37]
    Sprite Class Reference - Why Cocos2d-x
    May 21, 2018 · Returns the rect of the Sprite in points. Gets the weak reference of the TextureAtlas when the sprite is rendered using via SpriteBatchNode. ...
  38. [38]
    Creating Sprites · GitBook - Why Cocos2d-x
    You can create a Sprite from an image with various graphic formats including: PNG, JPEG, TIFF, and others. Let's go through some create methods and talk about ...<|control11|><|separator|>
  39. [39]
    Sprite Component Usage Example | Cocos Creator
    Jun 30, 2025 · A Sprite is typically a 2D image rendering component that reads texture colors from image resources to render game backgrounds or UI elements.
  40. [40]
    SpriteBatchNode Class Reference - Why Cocos2d-x
    Dec 4, 2019 · SpriteBatchNode is like a batch node: if it contains children, it will draw them in 1 single OpenGL call (often known as "batch draw"). A ...
  41. [41]
    cocos2d-x 3 batch drawing explained - Stack Overflow
    Jul 2, 2014 · Don't use CCSpriteBatchNode in cocos2d-x v3. Batching is automatic and best left to the renderer to optimize draw calls through batch ...Cocos2d-x 2.0 - How do I Take Advantage of Sprite Auto-Batching ...How to access a SpriteBatchNode from another class? cocos2dMore results from stackoverflow.com
  42. [42]
    Cocos Creator v3.0 released!
    Feb 7, 2021 · Supports multiple rendering backends of Metal, Vulkan, WebGL 1.0, WebGL 2.0, GLES2, GLES3, and provides a unified GFX graphics API layer to the ...
  43. [43]
    Texture Packer Tutorial: How to Create and Optimize Sprite Sheets
    May 10, 2013 · This Texture Packer tutorial will show you how to use Texture Packer to create and optimize sprite sheets in your games, using a Cocos2D 2.X game as an example.
  44. [44]
    Compressed Textures | Cocos Creator
    Sep 22, 2025 · For GPU compressed textures like ASTC, ETC1, ETC2, PVRTC, etc. Configuring compressed textures allows converting texture pixel data into GPU ...Missing: packing | Show results with:packing
  45. [45]
    Shader Syntax | Cocos Creator
    May 24, 2024 · Cocos Shaders use YAML for flow control and GLSL for shader code, with CCEffect for techniques and CCProgram for shader code.Syntax Overview · CCEffect · Pass · Render Pass PropertiesMissing: tinting | Show results with:tinting
  46. [46]
    Cocos2d-x User Guide - Cocos Creator
    May 22, 2024 · Cocos Creator is a new type of game development tool oriented towards content creation that has completely integrated the componentized edition Cocos2d-x WEB.
  47. [47]
    Cocos Creator 3.8 API - Node
    Class of all entities in Cocos Creator scenes. Basic functionalities include: Hierarchy management with parent and children; Components management; Coordinate ...
  48. [48]
    Cocos Creator 3.8 API - Scene
    Scene is a subclass of Node, composed by nodes, representing the root of a runnable environment in the game. It's managed by Director and user can switch from ...Missing: documentation | Show results with:documentation
  49. [49]
    Transitioning Scenes · GitBook - Why Cocos2d-x
    Transitioning between Scenes ... You might need to move between Scene objects in your game. Perhaps starting a new game, changing levels or even ending your game.
  50. [50]
    Cocos Creator 3.8 API - Director
    Since the director is a singleton, you don't need to call any constructor or create functions, the standard way to use it is by calling: director.methodName(); ...Missing: documentation | Show results with:documentation
  51. [51]
    Layer - Cocos Creator
    May 22, 2024 · The Layer property of the Node is an unsigned 32-bit integer, supporting up to 32 different types of Layer, which can be set in Project -> Project Settings -> ...
  52. [52]
    Hierarchy Panel - Cocos Creator
    May 22, 2024 · The Hierarchy panel consists of two main sections, the Toolbar and the Node List, which are used to show the relationships between the nodes ...Missing: visual | Show results with:visual
  53. [53]
    Cocos2d-x: Director Class Reference
    ### Summary of Director Class in Cocos2d-x (v4)
  54. [54]
    Scheduler Class Reference - Why Cocos2d-x
    Dec 4, 2019 · Scheduler is responsible for triggering the scheduled callbacks. You should not use system timer for your game logic. Instead, use this class.
  55. [55]
    Scheduler - Cocos Creator
    May 22, 2024 · Cocos Creator provides a powerful, flexible and convenient timer component. Using the Scheduler Start a timer
  56. [56]
    Actions · GitBook - Why Cocos2d-x
    Action objects allow the transformation of Node properties in time. Any object with a base class of Node can have Action objects performed on it. As an example, ...
  57. [57]
    Cocos2d-x: EventDispatcher Class Reference
    ### Summary of EventDispatcher in Cocos2d-x (v4)
  58. [58]
    Basic Actions · GitBook - Why Cocos2d-x
    Basic Actions and how to run them. Basic actions are usually a singular action, thus accomplishing a single objective. Let's take a look at a few examples: ...Missing: documentation | Show results with:documentation
  59. [59]
    Using the action system in Cocos Creator
    May 22, 2024 · The action system can complete displacement, zoom, rotate and all the other actions of the node within a designated time.
  60. [60]
    Tween System - Cocos Creator
    Jul 19, 2024 · In Cocos Creator, tweens can be applied to properties such as transform, rotation, scaling and color, as well as adding additional mechanisms ...
  61. [61]
    Tween Example | Cocos Creator
    Aug 25, 2024 · Here is a demonstration of how to use a to type of tween to bind the position information of a node and offset its position by 10 units along the Y-axis.to, by · Action Identifier · Reversing Actions · Node-related Tween
  62. [62]
    Get Familiar with the Animation Panel | Cocos Creator
    May 22, 2024 · The Animation panel is used to edit and preview the animation clip of the currently selected node. When editing animation data or related properties, it will ...
  63. [63]
    Creating A Frame Animation - Cocos Creator
    First, from the Assets panel, drag the texture to the Attribute Frame area and place it on the cc.Sprite.spriteFrame track.Missing: documentation | Show results with:documentation
  64. [64]
    Spine Skeletal Component References | Cocos Creator
    May 28, 2024 · The Spine Skeleton components support the data format exported by the official Spine tools, and renders and plays Spine assets.
  65. [65]
    Basic Cocos2d-x Concepts - Cocos Creator
    Sprite: A Sprite is a 2D image that can be animated or transformed by changing its properties. Most all games will have multiple Sprite objects ranging from the ...
  66. [66]
    UI System | Cocos Creator
    May 22, 2024 · This section introduces the powerful and flexible UI (User Interface) system in Cocos Creator. By assembling different UI components to produce UI interfaces.Missing: UICanvas | Show results with:UICanvas<|separator|>
  67. [67]
    ScrollView Class Reference - Why Cocos2d-x
    May 21, 2018 · ScrollView is a layout container for a view hierarchy that can be scrolled by the user, allowing it to be larger than the physical display.
  68. [68]
    CCMenu Class Reference - Why Cocos2d-x
    Mar 14, 2014 · Gets the position (x,y) of the node in OpenGL coordinates. More... local, getPosition (). Gets the position (x,y) of the node in OpenGL ...Missing: Button manual
  69. [69]
    Widget Component Reference | Cocos Creator
    May 28, 2024 · Widget is a frequently used UI layout component. It can automatically align the current node to any position in the parent node's bounding box, or constrain ...Missing: UICanvas | Show results with:UICanvas
  70. [70]
    Touch Events · GitBook - Why Cocos2d-x
    Touch events are usually assigned a priority and the event with the highest priority is the one that answers. Here is how you create a basic touch event ...
  71. [71]
    Handle Touch Events | Cocos Creator
    May 22, 2024 · In Cocos Creator, we can handle touch events from the screen by listening to Input.EventType.TOUCH_START event. There are two ways can be used.Missing: scaling | Show results with:scaling
  72. [72]
    Auto Fit for Multi-Resolution | Cocos Creator
    May 22, 2024 · We use Fit Height mode provided by the Canvas component to make the height of the design resolution automatically cover the height of the screen ...
  73. [73]
    Fonts | Cocos Creator
    May 29, 2024 · There are three types of font assets available to games made with Cocos Creator: system fonts, dynamic fonts, and bitmap fonts.Missing: theming schemes
  74. [74]
    ParticleSystem2D Component Reference | Cocos Creator
    May 28, 2024 · The ParticleSystem2D component is used to read the particle asset data and perform a series of operations such as play, pause, destroy, etc.
  75. [75]
    SafeArea component reference - Cocos Creator
    May 28, 2024 · This component is used to adjust the layout of current node to respect the safe area of a notched mobile device such as the iPhone X.Missing: 2024 2025
  76. [76]
    Introduction to Physics 2D - Cocos Creator
    May 22, 2024 · The Box2D physics module provides a more complete interaction with the interface and pre-defined components such as rigid bodies and joints.
  77. [77]
  78. [78]
    How to use physics with cocos2d-x - CodeAndWeb
    This includes a physics engine called Chipmunk. So everything you need to get the engine running is to initialize it during scene creation: copy code to ...
  79. [79]
    2D Physics Manager | Cocos Creator
    Dec 24, 2024 · Use the physics system to access some of the common functions of the physics module, such as click testing, ray testing, and setting up test messages.
  80. [80]
    Physics Engines | Cocos Creator
    May 22, 2024 · The physics engines currently supported by Creator include Bullet (ammo.js), cannon.js, PhysX and Builtin, and the default is Bullet (amo.js).Builtin ​ · Cannon. Js ​ · Different Physical Back-End...Missing: Box2D | Show results with:Box2D
  81. [81]
    AudioSource Component Reference | Cocos Creator
    May 28, 2024 · Cocos Creator 3.x uses AudioSource to control the playback of audio, which is a component that can be added to the scene, set by the Editor, or called in a ...
  82. [82]
    Audio Assets | Cocos Creator
    Jun 25, 2024 · Creator controls the playback of different audio assets through the AudioSource component to implement in-game background music and sound ...
  83. [83]
    Exapmle of AudioMgr - Cocos Creator
    May 22, 2024 · Since Cocos Creator 3.x removed the v2.x cc.audioEngine related API, only AudioSource can be used to control audio playback. However, in ...
  84. [84]
    cocos » cocos2d 0.6.9 Documentation Index - GitHub Pages
    cocos2d is a framework for building 2D games, demos, and other graphical/interactive applications. It works on Windows, OS X and Linux
  85. [85]
    Users/guanghui/cocos2d-x-v2/cocos/scripting/lua-bindings/manual ...
    Dec 11, 2014 · Macros · Functions · Macro Definition Documentation · Function Documentation ...
  86. [86]
    JavaScript Bindings - Cocos Forums
    Mar 23, 2012 · Why we moved from JavaScriptCore to SpiderMonkey? Apparently everyone is using JavaScriptCore, but although that seems to be true, they are all ...Missing: languages | Show results with:languages
  87. [87]
    Scripting - Cocos Creator
    Jul 18, 2024 · Scripting in Cocos Creator is used to implement user-defined (game) behavior and supports both JavaScript and TypeScript programming languages.Missing: reload | Show results with:reload<|separator|>
  88. [88]
    [BUG] Automatic recompile and auto-refresh preview - Cocos Forums
    Jul 7, 2016 · If you use the internal editor, make a change to a JS file, and hit save, Cocos Creator will recompile, and if you've checked the preference ...Missing: hot- | Show results with:hot-
  89. [89]
    Products | Cocos2d-x
    Cocos2d-x is a complete toolchain for developing multi-platform games. Starting with rapid prototyping all the way to a highly polished, well performing game.
  90. [90]
    cocos2d/bindings-generator: JSBindings generator for C++ - GitHub
    Basically, you specify a target vm (spidermonkey is the only current target vm) and the section from the .ini file you want to generate code for.Missing: rapid prototyping exposure
  91. [91]
    Build Stunning HTML5 Games with Cocos Creator in 2025 - EJAW
    Apr 30, 2025 · Cocos Creator is a free, open-source engine for building 2D/3D HTML5 games and apps, with high performance and an easy-to-use editor.
  92. [92]
    10 Most Popular C++ Development Frameworks in 2025 - Medium
    Aug 12, 2025 · 10 Most Popular C++ Development Frameworks in 2025 · 1. Qt · 2. Boost · 3. Unreal Engine · 4. JUCE · 5. POCO C++ Libraries · 6. Cocos2d-x · 7. SFML ( ...
  93. [93]
    Cocos Creator User Manual 3.8
    May 22, 2024 · x: Released in early 2021, it is the latest version of Cocos Creator, and has been validated through numerous commercial projects. 3.x ...About Cocos Creator · Cocos Shader Creation and... · Install and Launch · Unlit
  94. [94]
    Scene Panel | Cocos Creator
    May 22, 2024 · The Scene panel is the central work area for content creation, used for selecting and placing scene images, characters, effects, UI, and other game elements.
  95. [95]
    Particle System - Cocos Creator
    May 22, 2024 · Particle system is the basis of game engine effects performance, it can be used to simulate natural phenomena such as fire, smoke, water, clouds, snow, falling ...
  96. [96]
    Cocos Command-line tool - Why Cocos2d-x
    Cocos2d-x comes with a command-line tool called cocos. It is a cross-platform tool that allows you to create new Cocos2d-x applications as well as run them and ...Missing: recommendation | Show results with:recommendation
  97. [97]
    Configuring The Code Editing Environment | Cocos Creator
    May 22, 2024 · Debugging relies on the built-in Web server of the Cocos Creator editor, therefore debugging can only be carried out when the editor is started.
  98. [98]
    Sprite Frame Assets - Cocos Creator
    Jul 2, 2025 · Sprite Frame is a container for UI rendering and basic graphics, which manages the clipping and tiling data on top of a Texture2D asset (by ...
  99. [99]
    Audio Assets - Cocos Creator
    Jul 2, 2025 · Cocos Creator supports importing most common audio file formats, just drag and drop them directly into the Assets panel, and the corresponding ...
  100. [100]
    Prefab - Cocos Creator
    Dec 23, 2024 · Prefab stores reusable scene objects, containing nodes, components, and data. Instances can inherit data and have customized data modifications.
  101. [101]
    Auto Atlas - Cocos Creator
    May 22, 2024 · Auto Atlas is the picture-combining method that comes as part of Cocos Creator. Auto Atlas packs a specified series of images into a sprite sheet.
  102. [102]
    General Build Options | Cocos Creator
    Mar 24, 2025 · If a version control system such as Git or SVN is used, the build folder can be ignored in version control. Note: Spaces, illegal characters ...
  103. [103]
    An Introduction To The Cocos Store
    May 30, 2022 · A Cocos Store to allow developers to purchase and download more assets, code, and tools to help build their games.
  104. [104]
    Skeletal Animation Assets (Spine) - Cocos Creator
    Dec 23, 2024 · Create Skeletal Animation ​. Drag the skeletal animation asset from the Assets panel to the SkeletonData property of the spine component in the ...
  105. [105]
    sp.SkeletonAnimation | JsDoc Reference - Why Cocos2d-x
    The skeleton animation of spine. It updates animation's state and skeleton's world transform. var spineBoy = new sp.SkeletonAnimation('res/skeletons/spineboy ...
  106. [106]
    Spine: 2D skeletal animation for games
    Spine is 2D skeletal animation software for video games. Bring your Unity, C#, cocos2d-x, iOS, Android, C++, HTML5, JS and other games alive with 2D animation!Purchase · Try Now · Trial Download · Spine Forum
  107. [107]
    Tiled Map Resources (TiledMap) - Cocos Creator
    Sep 26, 2024 · Creating Tiled Map Resources ​. Drag the map resources from the Assets panel to the Tmx File property of the created TiledMap component:.
  108. [108]
    TileMap · GitBook - Why Cocos2d-x
    TileMaps are maps made up of tiles. Each tile can have independent behavior. TileMaps are stored in an XML-based map format called TMX.
  109. [109]
    Libraries and Frameworks — Tiled 1.11.0 documentation
    cocos2d. cocos2d (Python) supports loading Tiled maps through its cocos. tiles module. cocos2d-x (C++) supports loading TMX maps through the CCTMXTiledMap ...
  110. [110]
    Tutorial: Using sprite sheet animations in cocos2d-x V3
    The following method creates your game scene and activates it in the Director . ... You add the sprite as child of the background, not as child of the scene.Missing: initial | Show results with:initial
  111. [111]
    How to create and use sprite sheets with Cocos Creator 3.x
    Aug 27, 2025 · We will cover how to use TexturePacker to create and optimize sprite sheets, and how to use Cocos Creator to bring your game to life with animations.
  112. [112]
    Atlas | Cocos Creator
    Aug 29, 2024 · Import Atlas ​. Drag plist & png files into Assets Panel at the same time. Then you can use it in Cocos Creator. Atlas & SpriteFrame ​.Missing: importer | Show results with:importer
  113. [113]
    PhysicsEditor - Edit your box2d and chipmunk shapes! - CodeAndWeb
    PhysicsEditor is an editor for collision polygons for physics engines like box2d or chipmunk.PhysicsEditor Download · PhysicsEditor Documentation · PhysicsEditor Tutorials
  114. [114]
    Cocos2D-x Quickstart - PlayFab - Microsoft Learn
    Dec 15, 2022 · Cocos2d-x project setup. OS: This guide is written for Windows 10, using Visual Studio 2015. Cocos works on most modern OSs and environments.
  115. [115]
    Code - Cocos Store
    View All. CocosCyberpunk. Code. Free. super-html. Plugins. $14.80. UPDATED. Cocos Creator Code Obfuscation. Plugins. $27.90. fake 2d light follow. Code. Free.Missing: 2025 | Show results with:2025
  116. [116]
    Store - Cocos Forums
    How is the situation with Cocos Store plugin sales? Wondering if it's worth the time and effort to invest into making paid plugins. 1, 220, June 11, 2025. I can ...
  117. [117]
    Asset Manager Overview | Cocos Creator
    May 22, 2024 · The new Asset Manager resource management module has features for loading resources, finding resources, destroying resources, caching resources, Asset Bundle, ...Load Resources ​ · Dynamic Loading Of Resources... · Release Of Resources ​
  118. [118]
    Asset Bundle Overview - Cocos Creator
    Jun 18, 2025 · The Asset Bundle is a modular resource tool that allows developers to divide the resources such as textures, scripts, scenes, etc. into different Asset Bundles.
  119. [119]
    Level Of Details - Cocos Creator
    May 28, 2024 · Level Of Details (LOD) is a common optimization method used in large-scene development, where the core of LOD is to reduce the display details of distant or ...
  120. [120]
    Assets Hot Update Tutorial | Cocos Creator
    May 22, 2024 · In this tutorial, we will provide a hot update workflow for Cocos Creator project. We have also offered Downloader JavaScript interface, so ...Usage Scenarios And Design... · Manifest File ​ · Publish The Original Version...
  121. [121]
    Setting Up Native Development Environment | Cocos Creator
    Apr 28, 2025 · Recommended versions: r21 ~ r23 to avoid compatibility issues. Users with Apple M-series chips are recommended to use the r24 version. Click ...
  122. [122]
    Publish for the Huawei HarmonyOS | Cocos Creator
    May 22, 2024 · Publish for the Huawei HarmonyOS. Starting with v3.2, Cocos Creator supports packaging games as Huawei HarmonyOS ( .hap ) applications.
  123. [123]
    Install and Launch | Cocos Creator
    May 22, 2024 · Cocos Dashboard will serve as a unified downloader and launch portal for each Creator engine, making it easy to upgrade and manage multiple versions of Creator.
  124. [124]
    Linux Installation and Setup - Why Cocos2d-x
    We support Ubuntu 12.10+, however, newer versions of Ubuntu have changed and the steps to install Cocos2d-x and required dependencies are a bit different. This ...Missing: desktop | Show results with:desktop<|separator|>
  125. [125]
    Publish to Web Platforms | Cocos Creator
    May 28, 2024 · Cocos Creator supports WebGPU as rendering backend for building Web-Desktop since 3.6.2, just enable WebGPU option in the build panel when ...
  126. [126]
    Overview | Cocos Creator
    May 22, 2024 · Cocos creator supports: Native. GLES2; GLES3; Vulkan; Metal; NVN; WebGPU on WASM. Web/MiniGames. WebGL; WebGL2.0. Edit this page on GitHub. Last ...
  127. [127]
    VR Project Creation - Cocos Creator
    May 22, 2024 · In the Cocos Dashboard, create a new project and choose an editor version of v3.6.1 or above (for full functionality, choose an engine version ...<|control11|><|separator|>
  128. [128]
    Cocos HMI - Smart Cockpit Solution| Cocos Creator & Cocos2d-x ...
    These solutions can run in diverse models of chipsets and are fully compatible with Android, Linux, QNX and other mainstream smart vehicle operative systems.
  129. [129]
    Cocos2d - Wikipedia
    Cocos2d is an open-source game development framework for creating 2D games and other graphical software for iOS, Android, Windows, macOS, Linux, HarmonyOS, ...Sprites and scenes · Features · Supported platforms and... · History
  130. [130]
    Notes on Cocos2d iPhone Development - Lethain.com
    Oct 3, 2008 · Cocos2d iPhone is Ricardo Quesada's port of the Cocos2d library to Objective-C. The original is actually a Python library, and is intensely ...Missing: origins | Show results with:origins
  131. [131]
    Cocos2D-ObjC download | SourceForge.net
    Jan 13, 2022 · Cocos2D-ObjC is a framework for building 2D games, demos, and other graphical/interactive applications for iOS, Mac and tvOS.
  132. [132]
    szllzs/cocos2d-x-wasm - GitHub
    cocos2d-x is a multi-platform framework for building 2d games, interactive books, demos and other graphical applications. It is based on cocos2d-iphone, but ...
  133. [133]
    How To build cocos2dx using emscripten - c++ - Stack Overflow
    Jan 14, 2017 · You can try to use emscripten-port of cocos2d. Just add -s USE_COCOS2D=3 to your build. I maintain this port, and I already ported with it ...Run cocos2d-x project in browserCocos2D-JS -- Compile and Run a 'Clean' build?More results from stackoverflow.com
  134. [134]
    Programming Language Support - Cocos Creator
    May 22, 2024 · Cocos Creator supports both TypeScript and JavaScript programming languages. Note that JavaScript can only be imported as a plugin script to use.
  135. [135]
    Tutorial: JSB 2.0 | Cocos Creator
    Jul 11, 2024 · JSB 2.0 is an abstraction layer for the script engine, binding JS functions and property accessors with CPP callbacks, using macros to reduce ...<|separator|>
  136. [136]
    On what technology sits Cocos Creator
    Nov 6, 2019 · Native: Cocos Creator uses JSB to bind javascript functions to C++ on native, hard work done by native code on mobile and desktop, not a web ...Cocos Creater with existing C++ projectCocos Creator C++ scripts?More results from forum.cocosengine.org
  137. [137]
    How to optimize the graphics performance of your Cocos2d-x games
    Optimize by using batch drawing, minimizing draw calls, using 16bit textures, preloading, avoiding heavy loop operations, and using compressed textures.Missing: trimming | Show results with:trimming
  138. [138]
    How to reduce the final build size of a cocos2dx project? - cocos2d-x
    Oct 19, 2016 · Reduced the size of the resources being used using texture packer. Removed the unused Physics engine and other unused file formats from CCConfig ...Missing: resizing | Show results with:resizing
  139. [139]
    Submitting Cocos2D-X application to the Google Play Store
    Feb 11, 2016 · If you use Eclipse or android studio you only need to release an android app with signed keys just right click Android tools->export signed ...Building cocos2d-x and submitting to google play store - C++Online multiplayer game using Google Play Games Services in ...More results from forum.cocosengine.org
  140. [140]
    Game Design And Performance Optimization For "The Strongest ...
    Aug 19, 2020 · Currently, we have Drawcalls controlled to below 40, which is a relatively small value. But this doesn't mean the performance is much higher, ...
  141. [141]
    HTML5 game obfuscation - Game Development Stack Exchange
    Jul 16, 2012 · You can easily decompile and extract all assets and code from it. There are obfuscators out there, but they aren't stopping something who's really determined.Core code obfuscation and scriptingResource protection in cocos2d-x 2 and 3More results from gamedev.stackexchange.com
  142. [142]
  143. [143]
  144. [144]
    Chukong Technologies and ARM Raise the Bar for Mobile Gaming ...
    May 8, 2014 · Cocos2d-x is an open-source, cross-platform game engine developed and maintained by Chukong Technologies, which has been downloaded more than 1 ...Missing: 2012 | Show results with:2012
  145. [145]
    Cocos Game Showcase - August 2021
    Aug 27, 2021 · Geometry Dash by RobTop Games. One of the original big Cocos2d-x games is still going strong, with a huge player base filled with enthusiastic ...Three Kingdoms: The Glory Of... · Slash Brave By Kuan Ying Chu · Flick It! By 35...
  146. [146]
    Top 10 Games Built With Cocos In 2021
    Dec 28, 2021 · Enjoy these ten games that were released this year or became major hits in 2021. All of these games use the power of the Cocos engine.
  147. [147]
    Contains different cocos2d-x samples - GitHub
    Contains different samples that show how to use Cocos2d-x v3.2 with 3rd party libraries. Running the samples Download
  148. [148]
    cocos/cocos-example-physics: Samples for 3d physics - GitHub
    Sample project for physics · cases: functional testing · common: common resources · demo: case demonstration · experiment: some experiment feature ...
  149. [149]
    Quick Start: Making Your First 2D Game | Cocos Creator
    May 26, 2025 · In this section, we will demonstrate how to use the 2D features provided by Cocos Creator to create a simple platform jumping game.
  150. [150]
    cocos-creator/example-game-platformer - GitHub
    Contribute to cocos-creator/example-game-platformer development by creating an account on GitHub.Missing: RPG | Show results with:RPG
  151. [151]
    Examples and Tutorials | Cocos Creator
    May 22, 2024 · Material Examples(GitHub): Shows a variety of engine-built and customized material effects, including standard PBR, cartoon rendering, and also ...
  152. [152]
  153. [153]
    Learning Cocos2d-x Game Development [Book] - O'Reilly
    Learning Cocos2d-x Game Development is a comprehensive guide to building cross-platform games using Cocos2d-x. Throughout the book, you will gain hands-on ...
  154. [154]
    AR Project Creation - Cocos Creator
    May 22, 2024 · AR Project Creation ​. Follow the steps below to set up AR-related features for your project. Three methods are provided, and you can choose ...
  155. [155]
  156. [156]
  157. [157]
  158. [158]
    Comparing Leading Game Engines for Cross-Platform Development ...
    Jul 12, 2025 · Popular mobile games in China, like Idle Heroes, were built using Cocos. ... Best For. Hyper-casual games; HTML5 and browser-based games ...
  159. [159]
    Cocos2d-x - World's #1 Open-Source Game Development Platform
    Cocos2d-x is an open-source and cross platform open source free 2D game engine for mobile game development known for its speed, stability, and easy of use.
  160. [160]
    Cocos - 2025 Company Profile, Funding & Competitors - Tracxn
    Jun 25, 2025 · The latest valuation of Cocos is $1.8B as of Apr 30, 2025. Where does Cocos rank among its competitors? Cocos ranks 11th amongst 268 active ...Missing: Inc | Show results with:Inc
  161. [161]
    Unity vs Cocos2D: Which to Choose for Game Development
    Jun 30, 2020 · The first iteration of the Cocos2D engine was built in 2008 by an Argentinian developer named Ricardo Quesada ... Though it was only meant for ...Missing: origins | Show results with:origins
  162. [162]
    Cocos2D-x: A 2D Game Engine's Limitations and the Rise of Cocos3D
    Oct 28, 2025 · Cocos2D-x's biggest problem lies not in its support for 3D game development, but in its status as a 2D game engine. Although it has been based ...