Migrating from 3.10 to 4.0

Hi folks!

I want to move my C++ cocos2d-x Win32 project from cocos2d-x 3.10 + VS2013 + Cocos Studio to cocos2d-x 4.0 + VS2019 because both 3.10 and VS2013 are very outdated. So, I have few questions:

  1. Is Windows 64-bit supported out of the box? Actually, I want to get rid of 32-bit version of the game at all.
  2. Is there any Cocos Studio analogue (it was deprecated from 3.11 if I’m not mistaken) or I need to set up all my scenes in code instead of some kind of editor? Can I still use Cocos Studio with cocos2d-x 4.0?
  3. Is there anything that should stop me from migrating? Hope there is not. :slight_smile:

Waiting for your advices!

1 Like
  1. V4. is still win32, no 64 bit target for windows at all.
  2. Can not say anything, i m using pure c++.
  3. If you planning to release you games to ios, macos and android, i think you “must” migrate to v4, because it have so many improvements and fixes.

I don’t know if it is a “must”. We have supported these platforms for many years. I guess it depends on the issues.

OpenGL and OpenAL is already deprecated by Apple. It is a matter of Months, maybe a few years, before Apple will shutdown those api permanently. By the way - a few days ago, Apple review team rejected twice in a row my cocos2d-x v3.17.2 macos game because exception crash on reviewers mac with osx Catalina 10.15.6, according to reviewers logs, crash somewhere inside OpenAL initialisation. I had to replace cocos AudioEngine with my handmade audio engine, based on Apple’s AVAudioPlayer class, and then game was approved.

Thanks for your reply!

It’s a pity that there is no 64 bit target for Windows. Is it because 3-rd party libraries for Windows? As per this Steam survey the vast majority of Steam users is under 64-bit Windows. 32-bit is a bit archaic in 2020 :slight_smile: Still, not a big deal. I want to move to the latest cocos2d-x mainly because of secure web sockets and bug fixes.

Will try to switch from Cocos Studio to Cocos Creator + Creator To Cocos2d-x plugin. My code heavily depends on Cocos Studio scenes, nodes, and animations, so getting rid of deprecated Cocos Studio in favor of Cocos Creator will be a big win.

My main target OS is Windows but I’m going to support Macs and tablets on Android and iOS in the future.

the c++ plug-in isn’t supported in Creator 2.x. It was deprecated since 1.4

Really? What is the reason? I there any other way to export scenes to C++ code?

Not at this time. Although Creator v3 may offer some possibilities.

I’m also not sure of Studio support in v4. It hasn’t been maintained in about 6 years.

This page says you need Cocos Creator 1.4 and above but in fact it was deprecated since 1.4?

I’ll note this doc is deprecated.

I haven’t tested 4.0, but all our games runs fine on 3.17.1 - all made in Cocos Studio. Ofc it’s a 32bit so I was forced to use Parallels to run it on newer Mac OS releases and because of that it’s painfully slow, but works.

If you want to use a nice editor then it’s best to switch to Unity (it’s really a shame, because I prefer cocos2d-x way more), as we’re doing for new products, but it you want to stick to cocos, you have to rewrite whole game into javascript/cocos creator.

You may also try x-studio, I read somewhere it supports Cocos Studio files, but haven’t tried it, because we’re switching regardless.

Thanks for your reply! I’m still in the process of switching to 4.0 but can confirm that Cocos Studio files are still supported and the majority of scenes are working fine.

Is MacOs version also only 32-bit? That is not good, frankly speaking.

I can’t switch to Unity because the client is already written in cocos2d-x but I will think about Unity for my future projects. Still, I love cocos2d-x much more! I wish they will have up-to-date editor for C++ and 64 bit support in near future.

The problem is, focus seems to be on cocos creator / javascript.

If you, like me, prefer c++ version, it’s not a good situation.

Cocos2d-x is still in development, but it’s mostly maintained by one developer and pull requests from other people (just take a look at github). I remember when cocos creator wasn’t out, there were at least few releases a year: https://cocos2d-x.org/download/version (from 2018 development is mostly maintenance + metal support). The argument for javascript is that most Chinese devs prefers it over c++, which is the opposite outside China.

I’d be no problem for us if Cocos Studio will be paid.

Answering question: yes, mac version is only 32 bit and cocos studio won’t be updated to 64 bit or opensourced.

Yeah, Cocos Creator is for sure their priority.

Btw, does Creator support 64-bit Windows and 64-bit Mac OS targets somehow? C++ cocos2d-x is a core layer of JS Cocos Creator, isn’t it?

I have used Cocos Creator C++ export, and it mostly works but not as good as Cocos Studio in animated part (if I remembered). I have tried updating to v4 but didn’t finish because of annoying Cmake but I don’t see any issus becos it’s still C++ core underneath.

I’m not sure if that’s an excuse. I reported a bug with solution, 27 days, no one looks at it.

The fork , also solo developer, took less than a day to patch it after report.