LuaSTG-x
English Readme | ไธญๆ็ฎไป
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.
Gallery | Core API Manual | Changelog
Download
Full release download:
Main Features
- 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.
Relevant Link
- LuaSTG-x GitHub Wiki
- LuaSTG-x Lua API Document
- Baidu Tieba
- LuaSTG Wiki Site
- Bullet Hell Engines Discord Channel
Build Instructions
-
Clone the repo and submodules from GitHub (or download from release page).
$ git clone --recursive https://github.com/Xrysnow/LuaSTG-x.git
-
Clone external libraries into
frameworks/cocos2d-x/external
(or download from release page).$ cd LuaSTG-x/frameworks/cocos2d-x/external $ git clone https://github.com/Xrysnow/cocos2d-x-3rd-party-libs-bin.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.
Build Requirements
- 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
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
Dependency Graph
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