What features do you wish Cocos2d-x provided?

@Michael - Thanks for the feedback

Please add RoundCorneredLayer, with gradient,border and shadow support

1 Like

I hope to see this functionality are part of cocos2d extensions

Gesture Recognizers
FaceBook and Twitter integration
Admob integration 
Multiplayer support

I know there is many trials here and there but most of them are outdated

Plus to my requests: hold key event support for desktop platforms. Currently Cocos can report about a single press, which is obviously not enough.

What do you mean by “Multiplayer support”. There are dozens of game genres and each of them requires a different approach.

  1. Revamp and simplify MenuItem classes. Label class already done that
  2. Component/Entity system
  3. One-click automatic upgrade. I don’t want to create new projects in every release.
  4. Convert ant project to Gradle. So I can work on Android Studio. If possible, also support vs-android so I can export apk on Visual Studio.
  5. Revamp ParticleSystem. “ParticleSystem” is single particle emitter and not a “System”

Some extensions should be included

  • Gesture
  • Facebook/twitter integration
  • Google Play Services C++ SDK. The java version of leaderboard can be hijacked by decompiler easily

@dotsquid
“Multiplayer support” I mean simple extension to allow multi player functionality using client/server approach, or peer to peer using bluetooth.
using built and native functionality/services of IOS and android not using 3’rd party commercial products, some references are:
A simple solution on implementing bluetooth multiplayer with cocos2d-html5 + JSBinding + cocos2d-x + GameKit
SpaceShoot - A multiplayer game in HTML5
Creating a real-time multiplayer game with WebSockets and Node.js
Build a Multiplayer Minesweeper Game
A simple multiplayer shooter built with Melon.js and Node.js

I’m sorry, but this is not the engine part. You may easily do this right now. Even better solution - You may download required gfx pack according to the device spec. after app installation.

I agree with someone’s post earlier about keeping it stable. BY all means add new features, but try not to change existing stuff too much or too quickly.

The one thing I would like to see is improved documentation - sure, I know it’s not a feature, but the only way to find out how best to do some things is to search - and then filter the Cocos2d form the cocos2d-x v 2 or v3 Beta or RC or V3.1, then search some more, because the forum question was never really answered … you get the idea!

Personally I tend to not use great amounts of Cocos, but end up writing my own classes (for example, I use my own animation class) because I find it easier to develop exactly what I want rather than find out how to do it (if it is possible) on cocos. This isn’t a criticism of cocos at all - it’s just my use case.

So adding features is pretty low on my list - finding out how best to do things would be better.

Everyone who is using cocos2d is by definition a programmer - but some are more experienced than others, some full time developers, some just hobbyists. Making it too rich in features makes it more complex harder to learn.

1 Like

@Lion_Ts: Just because it’s something what an engine normally not does it could. That f. e. could be a delightful requirement what makes the difference compared to other engines. Just saying. (Admob integration or facebook/twitter integration is also a part which is not default for a engine but it’s worth thinking about it)

Please add Transition for popScene

Yeah pls add Transition for popScene, I would to see that too!

Hi!
why not a widget in UI Editor for animated Sprites? I mean, It would be great if I could insert an animated sprite and when I decide editing in the timeline I saw all the frames loaded in there. Then I could edit the animation in the timeline…

I’m a designer and I’m new in COCOSTUDIO so I don’t know if this is very difficult or impossible…just an idea.
Thanks a lot for your effort!

Accessibility that works with Android and iOS

If we can create a texture with an SVG image, that would be great since we won’t need two or three files (960x640, 1280x768, etc.) for each image.

Texture2D *texture = Texture2D::createWithSVG("a.svg", 960, 640);
1 Like

I wish, there would be minimalistic project starting points for genres. Think of them as prototyped templates which wouldn’t contain much graphics but rather a solid starting point to build upon. Having alredy all needed set, divided into genres like this:

  1. 2D-Platformer (TMX tilemap, parallax scrolling, power-ups, hud, player, level select, controls/touch events)
  2. Infinite Runner (Parallax scrolling, random environment, power-ups, hud, player, touch events)
  3. Board Game (TMX tilemap, selecting a tile (gid), turn-based, score, level select, board coordinates)
  4. Adventure / Quest ( Scene scrolling, define hot spots, basic player inventory, basic dialog implementation, etc)

How these templates should look like:

And any other type of genre you can think of.
Soon, when i have more time, i’ll provide some examples with source.

2 Likes

I’d like to have OpenGL ES 3.1 support. Unity already has it. Benefits are all the new features this new API provides.

  • Out of the box support for gestures.
  • Support for Themes in the GUI system
  • Better integration with native SDK e.g: a CocosViewController class for iOS and a CocosActivity for Java. Right now mixing native and coco2d-x is not really easy/clean to achieve.
    -a QT Hello world application to show how to integrate Cococ2d-x with the QT framework
    -MACROS to define the current coco2d-x version. Allowing better reuse of code between projects using different versions of QT.
1 Like

I want to +1 the request to make it easier to upgrade existing projects without needing to create new project using script. And some people will want to keep cocos2dx folder in a different location, not copy it inside every project.

My suggestion is to NOT change anything in how the cocos2dx projects and code are structured. The script is very helpful for new developers or when starting a new project.

But script is not useful when upgrading existing projects, or if someone doesn’t like default code structure.

For making it easy to upgrade, only add documentation on how to create a new project MANUALLY without using script (this will include steps like adding cocos2dx library as a dependency, and adding paths for header includes etc…).

When we have clear steps on all the project settings needed to create a cocos2dx project, then we can easily check and update our existing project settings when new cocos2dx version is released. And if someone wants to keep cocos2dx code in a separate location etc… they can make those changes also easily.

@dotsquid Will this resolve your concerns?

@Chano Cocos2dx 3.0 already has ‘some’ support for changing screen sizes. Currently it is only implemented for when screen size changes on ios/android device orientation change, but that same function can also be called when a desktop window is resized. Check AppDelegate::applicationScreenSizeChanged

You can symlink cocos in if you don’t want a separate copy in each game

I hope the cocos2d-x can support windows phone more efficent. the converting from the opengl to directx decreased the efficency too much.