Axmol Engine – A Multi-platform Engine for Desktop, XBOX (UWP) and Mobile games. (A radical fork of Cocos2d-x-4.0)
Go to file
halx99 edc8424b45 Fix README_CN.md markdown format [skip travis][skip appveyor] 2020-08-10 16:12:35 +08:00
cmake Disable double use in chipmunk_types.h instead CMakeLists.txt more stable for ENGX 2020-08-09 22:41:06 +08:00
cocos Sync macro 2020-08-07 23:55:25 +08:00
docs update error link 2019-12-12 23:55:05 +08:00
extensions Disable double use in chipmunk_types.h instead CMakeLists.txt more stable for ENGX 2020-08-09 22:41:06 +08:00
external Sets Gradle Plugin version to 3.4.0 to fix cmake can't recognize ninja 2020-08-10 15:04:12 +08:00
licenses Remove license files. 2019-12-12 23:53:27 +08:00
templates Sets Gradle Plugin version to 3.4.0 to fix cmake can't recognize ninja 2020-08-10 15:04:12 +08:00
tests Sets Gradle Plugin version to 3.4.0 to fix cmake can't recognize ninja 2020-08-10 15:04:12 +08:00
tools Add missing console tool 2020-08-05 14:10:09 +08:00
.appveyor.yml Don't build android at appveyor 2020-05-19 13:36:51 +08:00
.gitattributes fix line end in windows 2013-09-20 22:23:13 +08:00
.gitignore Update build guide [skip appveyor] [skip travis] 2020-08-06 16:01:00 +08:00
.gitmodules Remove jsb/h5 (#19621) 2019-04-18 23:56:12 -07:00
.travis.yml disable other jobs exclude android & ios 2020-02-07 16:41:34 +08:00
AUTHORS Update AUTHORS 2016-07-26 21:55:06 +08:00
CHANGELOG [ci skip]Release note (#20234) 2019-10-24 14:34:48 +08:00
CMakeLists.txt Add full fairygui-tests 2020-08-04 13:15:02 +08:00
CONTRIBUTING.md rename contribute.md to contributing.md 2015-08-28 14:10:41 +08:00
README.md Refine README 2020-08-10 16:05:29 +08:00
README_CN.md Fix README_CN.md markdown format [skip travis][skip appveyor] 2020-08-10 16:12:35 +08:00
download-deps.py fix folder error if path is not start with v (#19328) 2019-01-21 11:47:15 +08:00
install-deps-linux.sh fix issue that can not run release mode with lua projects (#20291) 2019-11-05 10:19:27 +08:00
issue_template.md Fix minor typo in issue_template (#16672) 2016-10-11 09:30:18 +08:00
setup.py delete ANT check on setup.py (#19042) 2018-09-14 14:24:07 +08:00

README.md

EGNX

Build Status Windows Build Status

This is another more radical fork of cocos2d-x v4, use opanal for all platforms, single texture multi gpu texture handler, c++14/17...

简体中文

Purpose Summary:

  • C++14/17
  • Forcus on native game dev only
  • Fix bugs ASAP
  • Review PR ASAP
  • Excellent PRs from any guys are welcome, we will review & merge ASAP

Highlight Features:

  • Refactor AudioEngine, OpenAL for all platforms, and on iOS, can switch to openal-soft through -DCC_USE_ALSOFT_ON_APPLE since Apple mark OpenAL framework deprecated on iOS12
  • Refactor UserDefault with mio, very fast
  • Modularize all optional extension, all move from engine core to folder extensions
  • Implement all .wav formats supported by openal-soft, such as MS-ADPCM, ADPCM...
  • Use modern gl loader glad to instead glew
  • Add google angle renderer backend support
  • Set default C++ standard to 14
  • Set min deploy target ios sdk to 9.0
  • Remove tinyxml2, use more fast pugixml instead
  • Use curl for HttpClient,Downloader on all platforms
  • Use SAX parser for all plist file, remove apple platform spec for getValueMapFromFile stubs
  • Spine-3.8 support
  • Add engine extension FairyGUI support

Roadmap

Quick Start

Common Requirement python

  • python-2.7.17+, python-3.7+ also works

Windows

  1. Install CMake 3.6+
  2. Install Visual Studio 2019 build(we strong recommand you install this version)
  3. Execute follow command at command line(Console, Window Terminal or Powershell)
cd engine-x\
cmake -S . -B build -G "Visual Studio 16 2019" -A Win32

Android

  1. Install Android Studio 3.5.3+

  2. When first start Android Studio, It will guide you to install sdk and other tools, just install them

  3. Start Android and choose [Open an existing Android Studio Project] to open engine-x\tests\cpp-tests\proj.android

  4. Start Android Studio and Open [Tools][SDKManager], then switch to SDK Tools, check the Show Package Details, choose follow tools and click the button Apply to install them:

    • Android SDK Platform 28 r3
    • Android SDK Build-Tools 28.0.3
    • NDK r16b+
    • CMake 3.6
  5. Waiting for Gradle sync finish.

  6. Remark: If you use non-sdk provided CMake edition, you need download ninja from https://github.com/ninja-build/ninja/releases, and copy ninja.exe to Cmake's bin directory

iOS

  1. Ensure xcode11+ installed
  2. Install brew: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    when finish, install follow tools:
    brew update
    brew install git
    brew install cmake
    brew install autoconf
    brew install automake
    brew install libtool
  1. Execute follow command
    sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
  2. Generate xcode project
  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
  1. After cmake generate finish, you can open xcode project at build folder and run cpp-tests or other test targets.

Pitfalls

  • ThreadLocalStorage(TLS)
    • ios x86 simulator ios>=10
    • ios x64 or devices(armv7,arm64) ios sdk>=9.0
    • the openal-soft maintained by kcat use TLS