mirror of https://github.com/axmolengine/axmol.git
3.9 KiB
3.9 KiB
engine-v5
This is another more radical fork of cocos2d-x game engine, use opanal for all platforms, single texture multi gpu texture handler, c++17...
The readme of cocos2d-x v4: https://github.com/simdsoft/engine-v5/blob/master/README.ccv4.md
Goals summary:
- C++17
- forcus on native game dev only
- Remove unnecessary sources
- build engine as static or dynamic library support
- If you have any other excellent goals, welcome
- Excellent PRs from any guys are welcome, I will review & merge ASAP
preprocessors notes:
CC_STATIC
_USRDLL
_USEGUIDLL
_USREXDLL
_EXPORT_DLL_
_USRSTUDIODLL
_USRSTUDIOPDLL
Refactor core & extensions libs
-
engine-v5-core.dll(node tree, multi-renderer-backends, filesystem, audio, platform spec, and other):
- 1. Refactor audio engine, OpenAL for all platforms.
- 2. Remove SimpleAudio
- 3. Remove offthread file operation
- 4. Remove getSutiableFOpen, avoid reduce performance, there is another better solution for support:
just doesn't convert path to utf-8 in FileUtils manually implementation
- 5. Refactor CCDownloader, curl for all platforms, don't use scheduler to retrive progress info, make it more reuseable
- 7. Refactor engine-v5-deps, all compile as vs2019 MSVC 19.22.27905.0
- 8. minizip-1.2.0
- 9. ccMessageBox
- 10. BMP support with stb_image
- 11. Remove unused libuv
- 12. Reorder child support
- 13. Remove tinyxml2 dep, use pugixml instead
- 14. Use xsxml for SAX parser only
- 15. Multi meta textures v1.0
- 16. ProgramStateRegistry
- 17. Optimize CCFileUtils
- 18. ANGLE support.
- 19. Use curl for HttpClient all platforms
- 20. AES encrypt system
- 21. Remove xxtea
- 22. Remove rapidxml dep
- 23. fix etc1 alpha test case, content size incorrect
- 24. Since getSuitableFopen removed, don't convert to utf-8 for win32, or in the future, windows 10 will support utf-8 file path, such as: For Chinese system language users: 在 控制面板-区域-更改系统区域设置 中 勾选 Beta版:使用 Unicode UTF=8 提供全球语言支持(U) 选项
- XX1. Cache ProgramState or use object_pool
- XX2. Remove socket.io websockets, use yasio for socket connection solution
- XX3. Fully streaming play for all media file: .mp4, .mp3, .ogg, .wav
- XX4. Streaming load for .ttf with freetype2
- XX5. Remove CCB(already removed in v4)
- XX6. Sync 3rd bin
- XX7. Purely offthread load texture, use shared gl context
- XX8. Use git submodule to manage 3rd libs.
-
Upgrade 3rd stubs to latest stable edition for all platforms
- zlib to 1.2.11
- engine-v5.ui.dll: The original v3-ui framework may remove in the future
- engine-v5.ext.lib: old GUI ui(could be remove), physics-nodes, pu3d
- engine-v5.dragonbones.lib
- engine-v5.ccs20.dll: x-studio
- engine-v5.ccs21.dll: x-studio
- engine-v5.xs.dll: x-studio
- engine-v5.spine.lib
- engine-v5-lua.lib:
- Lua53 compat
- make lua test works well
- Remvoe luasocket, use yasio for socket connection solution
!!! Custom APK support, don't compress .mp4, .mp3, .ogg, .wav, .ttf
!!!! future of future:
- Use sol2 for binding framework instead tolua++
- Use bgfx for multi renderer backend support