Cocos2D-Mono 2.6.2

dotnet add package Cocos2D-Mono --version 2.6.2
                    
NuGet\Install-Package Cocos2D-Mono -Version 2.6.2
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Cocos2D-Mono" Version="2.6.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Cocos2D-Mono" Version="2.6.2" />
                    
Directory.Packages.props
<PackageReference Include="Cocos2D-Mono" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Cocos2D-Mono --version 2.6.2
                    
#r "nuget: Cocos2D-Mono, 2.6.2"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Cocos2D-Mono@2.6.2
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Cocos2D-Mono&version=2.6.2
                    
Install as a Cake Addin
#tool nuget:?package=Cocos2D-Mono&version=2.6.2
                    
Install as a Cake Tool

<div align="center">

Cocos2D-Mono

MonoGame powered built the cocos2d way!

Check out the docs!

DesktopGL (Windows/Linux/macOS) Windows macOS Linux Android iOS

<sub>Built from source only — not in the NuGet packages (see <a href="#platform-support">Platform support</a>):</sub><br> Mac Catalyst tvOS

</div>

Packages

Starting with the release after 2.5.10, Cocos2D-Mono ships as three consolidated, multi-targeted NuGet packages (DesktopGL for Windows/Linux/macOS, WindowsDX, Android, and iOS in one package each):

Package Use it when
Cocos2D-Mono The engine, including the MonoGame content-pipeline (MGCB) build task dependency.
Cocos2D-Mono.Core Same engine, without the MGCB dependency — for projects that don't use the content pipeline.
Cocos2D-Mono.Box2D The Box2D physics port (also flows transitively through the packages above).

Migrating from the per-platform packages (Cocos2D-Mono.DesktopGL, Cocos2D-Mono.Windows, Cocos2D-Mono.Linux, Cocos2D-Mono.macOS, Cocos2D-Mono.Android, Cocos2D-Mono.iOS and their .Core.* variants): 2.5.10 is the final release under those IDs — replace the reference with Cocos2D-Mono (or Cocos2D-Mono.Core) and the right target framework is selected automatically. The DesktopGL/Windows/Android/iOS flavors are compiled exactly as their legacy counterparts were. If you are coming from the dedicated Linux/macOS packages, note that the unified DesktopGL build uses the same compile-time flavor the flagship Cocos2D-Mono.DesktopGL package always shipped on those platforms (this can relocate CCUserDefault storage written by the old dedicated packages).

Platform support

Tier Platforms How to get it
Packaged Desktop via DesktopGL (Windows, macOS, Linux), WindowsDX, Android, iOS The NuGet packages above.
Source only Mac Catalyst, tvOS Build the engine from source against our MonoGame fork, checked out beside this repository at the commit pinned by MONOGAME_FORK_REF in build.yml. MonoGame publishes no package for either platform, so neither is in the published NuGet packages.
Registered console developers PlayStation 5 On the 2.5.x line — see the roadmap.

A published NuGet package only carries a platform when that platform's MonoGame dependency can also be restored from nuget.org — which is what separates the first two tiers. The build enforces it: dotnet pack leaves the source-only targets out even on a Mac with the fork present.

Building Mac Catalyst or tvOS from source

On macOS, with the .NET 10 SDK:

# 1. The workload for the platform you want
dotnet workload install maccatalyst        # or: tvos

# 2. Our MonoGame fork, checked out beside this repository at the commit CI pins
#    (MONOGAME_FORK_REF in .github/workflows/build.yml)
git clone https://github.com/Cocos2D-Mono/MonoGame.git ../MonoGame
git -C ../MonoGame checkout <MONOGAME_FORK_REF>
git -C ../MonoGame submodule update --init ThirdParty/StbImageSharp ThirdParty/StbImageWriteSharp

# 3. The fork's MonoGame.Framework for that platform
dotnet build ../MonoGame/MonoGame.Framework/MonoGame.Framework.MacCatalyst.csproj -c Release
#    tvOS: MonoGame.Framework.tvOS.csproj

# 4. The engine for that platform (Box2D first, as CI does)
TFM=net10.0-maccatalyst26.0                  # tvOS: net10.0-tvos26.0
dotnet build src/Box2D/Box2D.csproj -c Release -f $TFM -p:TargetFrameworks=$TFM
dotnet build src/Cocos2DMono/Cocos2DMono.csproj -c Release -f $TFM -p:TargetFrameworks=$TFM

A game can instead reference src/Cocos2DMono/Cocos2DMono.csproj from its own net10.0-maccatalyst or net10.0-tvos project: once step 3 has run, the engine finds the fork's assembly and adds the target on its own. Directory.Build.props documents the overrides for a fork checked out somewhere else.

Getting Started

Check out the guides!

Building & running the test app

The library and its interactive test app build from a single solution, Cocos2DMono.sln (the per-platform solutions were retired when the build was consolidated).

# Build the library (all target frameworks)
dotnet build Cocos2DMono.sln

# Run the interactive test app on the desktop (DesktopGL / net10.0)
dotnet run --project Tests/Cocos2DMono.IntegrationTests/Cocos2DMono.IntegrationTests.csproj -f net10.0 -p:TargetFrameworks=net10.0

# Run the headless unit tests
dotnet test Tests/Cocos2DMono.UnitTests/Cocos2DMono.UnitTests.csproj

The test app's scenes live in Tests/cocos2d-mono.Tests/; the multi-targeted Cocos2DMono.IntegrationTests project compiles them into a runnable host for each platform (desktop, Windows, Android, iOS). See Tests/README.md for details.

Contributing

Thanks so much for your interest in cocos2d-mono and wanting to contribute to the project! Here's a guide to help you get started.

CONTRIBUTING.md covers the working conventions that apply across all Cocos2D-Mono repositories — branching and PR flow, how changes are verified, API stability, and how releases are cut.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-android36.0 is compatible.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-ios26.0 is compatible.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed.  net10.0-windows7.0 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Cocos2D-Mono:

Package Downloads
Cocos2D-Mono.Core

Cocos2D-Mono.Core is a metapackage variant of Cocos2D-Mono that excludes the MonoGame.Content.Builder.Task MSBuild target. Reference this package instead of Cocos2D-Mono if you do not use the MonoGame content pipeline. The runtime DLL (Cocos2DMono.dll) is identical - only the build-time content-pipeline flow differs.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.6.2 57 10/13/2026
2.6.1 96 10/6/2026
2.6.0 618 7/29/2026
2.5.12 142 7/24/2026
2.5.11 158 7/11/2026

2.6.2 - No API changes and nothing to migrate; the packaged platforms behave as in 2.6.1. Mac Catalyst and tvOS can now be built from source against the project's MonoGame fork (they aren't in these packages). Also removes unused internal label code.
2.6.1 - Linux/macOS label fixes: CCLabel now disposes the native Skia canvas and font it creates on each redraw, and its SkiaSharp backend moved off deprecated text APIs (no rendering change). No API changes.
- See https://github.com/Cocos2D-Mono/cocos2d-mono for the full changelog.