There hasn’t been much activity on github, only four commits since January. This makes me wonder what is the current status for cocos2d-x v4 and what the devs priorites are. Should we expect slow development of v4? Are devs just focused on cocos creator?
It is a bit worrysome for us devs with big projects under developement as well as popular games using v3 currently in production which might be updated to v4 in the future.
This makes me wonder if there is a current roadmap for v4? I remember there used to be one in trello a long time ago.
A roadmap would be nice, even if development is slow, so everyone could know what the team’s priorites are. Also if an user sees a task in the roadmap he could be tempted to implement it himself and make a PR
It seems like Cocos Creator is the main engine for now. It has features like JS web, which therefore also supports WeChat mini games, and also many increasing features for 3D.
@bolin i’m just wondering what features are you hoping to see in V4? From what i see, the only thing missing from v3 in v4 is JS binding.
I remember reading somewhere in the forums that there’s no plans for bringing JS to V4? So i think projects with JS have to either stay on v3 or migrate to Creator?
Your post definitely leads me to think about this a little, and my hypothesis is that v4 is probably a test bed for Metal support. And once that is stable, they will work towards bringing it to Cocos Creator? I doubt they will continue to bring anymore new features to Cocos2d-x.
At the moment I care more about maintenance, bug fixes and performance improvements rather than new features really.
There are some basic features missing though… for example there’s no way to store a user defined shader program in ProgramCache (in fact I implemented this and made a PR: https://github.com/cocos2d/cocos2d-x/pull/20496).
It would be nice to know if they are currently 100% focused on cocos creator or know what’s going on. Devs might want to either use v3 or switch to a different engine depending on what’s the status or roadmap for v4.
Ah i haven’t noticed about the batching part before.
Hmm seems like previously (v3) it was using the ProgramState pointer in the hashMe struct, but it’s now changed to use ProgramType in v4 (Line 86).
Not sure what is the reason for the change…? any Cocos2d-x dev can advice on this?
I think the ProgramCache having only ‘built-in’ shader programs with ‘valid’ ProgramType is somewhat related to this hashing?
It seems you are dealing with pretty advanced stuff by using custom shader that is used widely across your game objects.
One suggestion i can think of, is to create your own ProgramType and add on to the existing list. This way, probably may fulfill your requirement of having the shader program hashed for batching.
I wouldn’t consider a custom shader advanced stuff… at least no the one I wrote
I haven’t looked in depth but I don’t think it would be as easy as creating a custom ProgramType (plus it doesn’t seem to be the best way workflow-wise if you have to create one for each shader you write), since you’d have to check if the uniforms have changed from one ProgramState to the other…
Anyways I don’t really want to derail the thread with this particular issue. Hopefully @zhangxm or @slackmoehrle or someone else from the team can answer our doubts about v4 dev status and/or it’s roadmap.