EGNX是什么?
EGNX是Engine-X的缩写,是基于Cocos2d-X 4.0全新打造的持续维护游戏引擎
为什么单独fork,而不是直接向官方提交PR
- 官方资源全面倾向Cocos Creator
- 我们有太多的想法和优化
- 我们希望将引擎C++做到极致
引擎仓库
- GitHub
- 主引擎: https://github.com/c4games/engine-x
- 三方库: https://github.com/c4games/engine-x-3rd
- Gitee (国内极速下载)
- 主引擎: https://gitee.com/c4games/engine-x
- 三方库: https://gitee.com/c4games/engine-x-3rd
宗旨:
- C++14/17
- 专注于natvie平台游戏研发
主要特性:
- 重构AudioEngine, 全平台OpenAL, 在iOS平台可以通过
-DCC_USE_ALSOFT_ON_APPLE
切换为 openal-soft, 苹果公司已经在iOS12将OpenAL framework标记为废弃的 - 重构UserDefault, 全平台基于内存映射文件 mio, 性能提升百倍
- 模块化所有引擎扩展库, 所有扩展库放到extensions目录下,如cocostudio, spine
- AudioEngine实现wav所有
openal-soft
支持的封装格式, 例如MS-ADPCM, ADPCM等 - 使用现代化的GL加载器glad代替glew
- 增加google angle渲染后端支持
- 设置默认C++标准为C++14
- 设置ios下最低目标平台为ios9.0
- 使用更快的xml解析库pugixml代替tinyxml2
- HttpClient, Downloader全平台统一实现,均基于curl
- 全平台统一使用XML SAX解析plist文件, 移除Apple平台的实现
- Spine 3.8支持
- 新增FairyGUI支持
Roadmap
快速开始
必要工具 python
- python-2.7.17+, python-3.7+都可以
Windows
- 安装CMake,要求3.6以上
- 确保Visual Studio 2019以正确安装
- 执行下面的命令
cd engine-x
cmake -S . -B build -G "Visual Studio 16 2019" -A Win32
- 之后就可以用vs打开
engine-x/build/Cocos2d-x.sln
启动cpp-tests等测试工程了
Android
-
安装 Android Studio 3.5.3或更高版本
-
启动 Android Studio并打开engine-x\tests\cpp-tests\proj.android
-
通过 [Tools][SdkManagers] 打开sdk管理工具,安装如下工具
LLDB 3.1+
CMake 3.10.2+
NDK 20.1+ -
等待Gradle sync完成后,Build APKs,安装运行
-
如果报缺少Ninja, 从https://github.com/ninja-build/ninja/releases下载, 拷贝Ninja.exe到Cmake的bin目录即可
iOS
- 确保已安装xcode11+
- 安装brew:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew安装完成后,确保如下工具安装:
brew update
brew install git
brew install cmake
brew install autoconf
brew install automake
brew install libtool
- 执行如下命令确保cmake能成功生成xcode工程:
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
- 生成xcode工程, 进入engine-x根目录执行如下命令:
mkdir engine-x/build
cd engine-x/build
cmake .. -GXcode -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphonesimulator
# for simulator64
# cmake .. -G Xcode -DCMAKE_TOOLCHAIN_FILE=../cmake/ios.toolchain.cmake -DPLATFORM=SIMULATOR64 -DENABLE_ARC=0 -DENABLE_BITCODE=0
# for (armv7, armv7s, arm64)
# cmake .. -G Xcode -DCMAKE_TOOLCHAIN_FILE=../cmake/ios.toolchain.cmake -DPLATFORM=OS -DENABLE_ARC=0 -DENABLE_BITCODE=0
# for device 64
# cmake .. -G Xcode -DCMAKE_TOOLCHAIN_FILE=../cmake/ios.toolchain.cmake -DPLATFORM=OS64 -DENABLE_ARC=0 -DENABLE_BITCODE=0
- 之后就可以用xcode打开, 选择cpp-tests编译运行
注意
- ThreadLocalStorage线程本地存储
- ios x86 simulator ios>=10
- ios x64 or devices(armv7,arm64) ios sdk>=9.0
- the openal-soft maintained by kcat use TLS
QQ交流群
点击链接加入群聊【engine-x交流群】
有找游戏开发工作的也可以加群发简历给群主
参考链接
- 官方Cocos2d-x-v4: https://github.com/cocos2d/cocos2d-x