Coder Social home page Coder Social logo

solan-solan / engine-x Goto Github PK

View Code? Open in Web Editor NEW

This project forked from axmolengine/axmol

0.0 0.0 0.0 1.46 GB

[Early developing] This is another more radical fork of cocos2d-x game engine, use openal for all platforms, single texture multi gpu texture handler, c++17...

Home Page: https://c4games.com/

CMake 0.64% Python 2.65% C++ 84.59% Objective-C 0.60% C 2.31% Makefile 0.01% Objective-C++ 1.82% Java 1.28% GLSL 0.49% Lua 5.34% Shell 0.10% Csound Document 0.06% PLSQL 0.10% HTML 0.01% PowerShell 0.02% Batchfile 0.01% JavaScript 0.01%

engine-x's Introduction

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
  • Add engine extension 'fairygui' support
  • 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

Quick Start

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. Start Android and choose [Open an existing Android Studio Project] to open engine-x\tests\cpp-tests\proj.android

  3. Start Android Studio and Open [Tools][SDKManager] and install sdk tools:
    LLDB 3.1+
    CMake 3.10.2+
    NDK 20.1+

  4. Waiting for Gradle sync finish.

  5. Remark: If missing Ninja, could be download from https://github.com/ninja-build/ninja/releases, then 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

Reference links

engine-x's People

Contributors

minggo avatar zilongshanren avatar cocosrobot avatar ricardoquesada avatar pandamicro avatar samuele3hu avatar super626 avatar dabingnn avatar wenhailin avatar stammen avatar halx99 avatar j4m3z0r avatar yangws avatar angeltown avatar dualface avatar xiaofeng11 avatar boyu0 avatar folecr avatar nutty898 avatar mogemimi avatar darkdukey avatar pipu avatar patricejiang avatar jiusheng avatar chengstory avatar 2youyou2 avatar chuanweizhang2013 avatar rolandoam avatar geron-cn avatar carlomorgantinizynga avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.