| Dernière version | 0.6.9 () |
|---|---|
| Dépôt | https://github.com/los-cocos/cocos |
| Écrit en | Python |
| Environnement | Multi-plateforme |
| Formats lus | CocosBuilder exported info(d) et CocosBuilder info(d) |
| Formats écrits | CocosBuilder exported info(d) et CocosBuilder info(d) |
| Type | Framework Bibliothèque logicielle |
| Licence | MIT |
| Site web | https://los-cocos.github.io/cocos-site/ |
Cocos2d est unframeworklibre enPython, permettant de développer des applications ou desjeux vidéo.
Attention à ne pas confondre Cocos2d etCocos2d-X qui sont deuxframeworks différents. Le premier est utilisé enPython, le second enC++. Par exemple, le jeuGeometry Dash a été créé avec Cocos2d-X et non Cocos2d[1].
Toutes les versions de Cocos2d fonctionnent à l'aide de la primitive de base connue sous le nom desprite. Un sprite peut être considéré comme une simple image 2D, mais peut également être un conteneur pour d'autres sprites. Dans Cocos2D, les sprites sont disposés ensemble pour former une scène, comme un niveau de jeu ou un menu. Les sprites peuvent être manipulés dans le code en fonction d'événements ou d'actions ou dans le cadre d'animations. Les sprites peuvent être déplacés, pivotés, mis à l'échelle, leur image peut être modifiée, etc.
Cocos2D fournit des primitives d'animation de base qui peuvent fonctionner sur des sprites à l'aide d'un ensemble d'actions et de minuteries. Elles peuvent être enchaînées et composées ensemble pour former des animations plus complexes. La plupart des implémentations de Cocos2D vous permettent de manipuler la taille, l'échelle, la position et d'autres effets du sprite. Certaines versions de Cocos2D vous permettent également d'animer des effets de particules, des effets de filtrage d'image via des shaders (déformation, ondulation, etc.).
Cocos2D fournit des primitives pour représenter les éléments d'interface utilisateur courants dans les scènes de jeu. Cela inclut des éléments tels que des zones de texte, des étiquettes, des menus, des boutons et d'autres éléments courants.
De nombreuses implémentations de Cocos2D prennent en charge les moteurs physiques 2D courants tels queBox2D etChipmunk.
Différentes versions de Cocos2D disposent de bibliothèques audio qui encapsulentOpenAL ou d'autres bibliothèques pour fournir des fonctionnalités audio complètes. Les fonctionnalités dépendent de l'implémentation de Cocos2D.
La prise en charge de la liaison àJavaScript,Lua et d'autres moteurs existe pour Cocos2D. Par exemple, Cocos2d JavaScript Binding (JSB) pourC/C++/Objective-C est le code wrapper qui se situe entre le code natif et le code JavaScript utilisantSpiderMonkey de Mozilla. Avec JSB, vous pouvez accélérer votre processus de développement en écrivant votre jeu à l'aide de JavaScript simple et flexible.
| Branch | Target Platform | API Language |
|---|---|---|
| Cocos2d | Windows, OS X, Linux | Python 2.6, 2.7 or 3.3+, Objective-C |
| Cocos2d-x | iOS, Android, Tizen, Windows, Windows Phone 8, Linux, Mac OS X | C++, Lua, JavaScript |
| Cocos2d-ObjC | iOS, Mac OS X, tvOS[2] | Objective-C, Swift |
| Cocos2d-html5 | HTML5-ready browsers | JavaScript |
| Cocos2d-xna | Windows Phone 7 & 8, Windows 7 & 8, Xbox 360 | C# |
| Cocos Creator | Android, iOS, HarmonyOS | C#, C++, TypeScript, JavaScript |
En février 2008, dans le village deLos Cocos, près deCórdoba, Argentine, Ricardo Quesada, un développeur de jeux, et Lucio Torre ont créé un moteur de jeu 2D pourPython avec plusieurs de leurs amis développeurs. Ils l'ont nommé « Los Cocos » d'après son lieu de naissance. Un mois plus tard, le groupe a publié la version 0.1 et a changé son nom en « Cocos2d »[3].
Attiré par le potentiel du nouvelApp Store d'Apple pour l'iPhone, Quesada a réécrit Cocos2d enObjective-C et en juin 2008 a publié « Cocos2d pour iPhone » v0.1, le prédécesseur de la famille Cocos2d ultérieure[3].
Cocos2D-ObjC (anciennement connu sous le nom de Cocos2D-iPhone et Cocos2D-SpriteBuilder), est maintenu par Lars Birkemose.
De plus, le designer anglais Michael Heald a conçu un nouveau logo pour Cocos2d (le logo Cocos2d était auparavant une noix de coco en marche).
En novembre 2010, un développeur deChine nommé Zhe Wang a dérivé Cocos2d-x basé sur Cocos2d. Cocos2d-x est également un moteurgratuit souslicence MIT, et il permet de compiler et d'exécuter sur plusieurs plates-formes avec une seule base de code.
En 2013, Quesada a quitté cocos2d-iPhone et a rejoint l'équipe cocos2d-x. En mars 2017, Quesada a été licencié par la société Chukong[4],[3]. En 2015, 4 branches cocos2d sont activement maintenues.
Cocos2d-x & Cocos2d-html5 sont maintenus et sponsorisés par des développeurs de Chukong Technologies. Chukong développe également CocoStudio, un éditeurWYSIWYG pour Cocos2d-x et Cocos2D-html5, ainsi qu'unfork Cocos3d-xgratuit du projet Cocos3D.
Cocos2d a été porté dans divers langages de programmation et sur toutes sortes de plateformes. Parmi eux, il y a :