[engine-x] A game-engine which is based on cocos2d-x-4.0

Thanks for your feedback, so I got the result from above tests: the RGBA4,RGBA565,RGB5A1 can be implemented by GL and Metal render backends identically without pixel format convert

  • GL_RGBA, GL_UNSIGNED_SHORT_4_4_4_4 === MTLPixelFormatABGR4Unorm
  • GL_RGB, GL_UNSIGNED_SHORT_5_6_5 === MTLPixelFormatB5G6R5Unorm
  • GL_RGBA, GL_UNSIGNED_SHORT_5_5_5_1 === MTLPixelFormatA1BGR5Unorm

egnx-1.0-a18 (2020.10.21)

  • [Feature] Add ProgramCache::registerCustomProgramFactory to cache custom shader support
  • [Reature] Re-enable batch-draw for custom shader
  • [Feature] Create and cache shader just in use time
  • [Feature] Re-enable custom shader support for spine, official v4 doesn’t support yet, see #234 and spine-runtime-pr1787, thanks to @etsek
  • [Feature] Improve tools command cocos new, now new project doesn’t copy whole engine source files, define env var COCOS2DX_ROOT on your system, everything should be fine.
  • [Feature] The tools command cocos new now support both python2 and python3
  • [BugFix] Fix HttpClient Send is returning wrong response code, see: #223, thanks to @imtrobin
  • [BugFix] Fix RenderTexture issues on iOS/macOS, see #233, thanks to @etsek
  • [BugFix] Fix CCFileStream write bits behavior differrent with fopen “wb” mode
  • [BugFix] Fix GLES texture format enum compatible on GLES-2.0 ONLY GPU, thanks to @solan
  • [Refine] Re-implement texture formats RGBA4,RGBA565,RGB5A1 at GL,Metal identically without pixel format convert, see #240, thanks to @solan
  • [Refine] Add UserDefault int64_t support
  • [Refine] Add custom hosts support for HttpReuqest
  • [Refine] Windows dll improvements
  • [Refine] Use pyenv to manage python version for travis-ci
  • [Refine] Add setDispatchOnWorkThread support for HttpClient
  • [Refine] Update gradle plugin to 4.1.0
  • [Refine] Build pugixml from sources for all paltforms
  • [Refine] Add support build openal-soft for mac target
  • [Refine] Move scripting from cocos to extensions
  • [Refine] Move spine-cpp from external to extensions/spine/runtime

For detail changes: https://github.com/c4games/cocos-re/compare/egnx-1.0-a17...egnx-1.0-a18

Note: If you encounter error when setup, just pull master and try again

2 Likes

Just tried new version, and i have a question: it is looks like, unlike cocos2d-x v4, cocos-re project created with cocos new command, does not have copy of cocos folder, but link to original cocos folder in cocos-re installation folder. This means, unlike cocos2d-x, that I am not able to zip my project and send it to my teammate to fix some source code of developed game. It also mean, ccConfig.h configuration acts on per-engine basis instead of per-game basis. Can you improve usability by copying cocos engine into project folder?

What about add a option --link-cocos=soft to control is better?

1 Like

This would be the perfect solution!