LuaSTG-x is a multi-platform game engine based on cocos2d-x and LuaSTGPlus. It is aimed at providing a powerful engine for building STG, especially bullet hell games.
Full release download:
- Complete 2D game engine functions from cocos2d-x.
- Multi-platform audio engine, supports audio effects.
- Multi-platform video engine based on FFmpeg.
- Cocos Creator support from creator_to_cocos2dx.
- Live2D support with Lua binding.
- ImGui support with Lua binding.
- Multi-thread optimizations.
- LuaSTG-x GitHub Wiki
- LuaSTG-x Lua API Document
- Baidu Tieba
- LuaSTG Wiki Site
- Bullet Hell Engines Discord Channel
-
Clone the repo and submodules from GitHub (or download from release page).
$ git clone --recursive https://github.com/Xrysnow/LuaSTG-x.git
-
Download extra files from Cubism SDK if you need live2d module. (instructions).
-
Generate project using CMake (instructions).
- If your target is Android platform, just open
frameworks/runtime-src/proj.android
with Android Studio. - If your target is macOS platform, add
-GXcode
parameter to cmake. - If your target is IOS platform, you can search for a bash script that helps to configure cmake.
- If your target is macOS/IOS platform, you need to open
project setting -> TARGETS -> LuaSTG-x -> Build Phases -> Copy Files
and checkCode Sigh On Copy
for frameworks.
- If your target is Android platform, just open
-
Compile with your target compiler.
- CMake 3.15+
- Android Studio 3.3.0+ and NDK r16+
- OS X 10.9+ and Xcode 9+
- or Linux with CC supports c++11
- or Windows 7+ and VS 2019+
Runtime requirements is actually decided by your compiler, but in most cases they should satisfy these conditions:
- Android 5.0+
- iOS 8.0+
- OS X 10.9+
- Windows 7+ and visual c++ runtime
LuaSTG-x
├ cocos2d-x
├ lstgx_Audio
│ └ openal-soft (in lstgx_external)
├ lstgx_external
│ ├ BurstLinker
│ ├ luafilesystem
│ ├ LPeg
│ ├ NativeFileDialog
│ ├ libogg
│ ├ openal-soft
│ ├ cLaTeXMath
│ ├ FFmpeg
│ ├ nanosvg
│ └ libzippp
│ └ libzip
├ lstgx_Math
├ lstgx_LuaCore
├ cocos2d-x-imgui
│ ├ ImGui
│ ├ imgui_markdown
│ ├ ImGuiColorTextEdit
│ └ implot
├ cocos2d-x-live2d
│ ├ CubismNativeFramework
│ └ Cubism SDK for Native
├ cocos2d-x-video
│ └ FFmpeg (in lstgx_external)
└ creator_to_cocos2dx