Skip to content

Latest commit

 

History

History
114 lines (86 loc) · 6.05 KB

README_ZH.md

File metadata and controls

114 lines (86 loc) · 6.05 KB

LuaSTG-x

English Readme | 中文简介


LuaSTG-x 是一个基于 cocos2d-xLuaSTGPlus 的多平台游戏引擎。其目标是为 清版射击游戏弹幕射击游戏 提供好用的引擎。


下载

完整发布版本下载:

主要特性

相关链接

编译指南

  1. 克隆本仓库及子模块(或从 release 页面 下载)

     $ git clone --recursive https://github.com/Xrysnow/LuaSTG-x.git
    
  2. 对于2023年之前的版本,克隆外部库至 frameworks/cocos2d-x/external (或从 release 页面 下载)

     $ cd LuaSTG-x/frameworks/cocos2d-x/external
     $ git clone --recursive https://github.com/Xrysnow/cocos2d-x-3rd-party-libs-bin.git
    
  3. 若需要使用 live2d 模块,请下载 Cubism SDK (指南

  4. 使用 CMake 生成工程文件 (指南).

    • 若目标为安卓平台,只需用 Android Studio 打开 frameworks/runtime-src/proj.android
    • 若目标为 macOS 平台,需要向 CMake 添加 -GXcode 参数
    • 若目标为 IOS 平台,需要额外设置 CMake ,你可以找到一些 bash 脚本来实现
    • 若目标为 macOS/IOS 平台,需要打开 project setting -> TARGETS -> LuaSTG-x -> Build Phases -> Copy Files 并为 frameworks 勾选 Code Sigh On Copy
    • 若目标为 Linux 平台,需要在使用 CMake 前执行 frameworks/cocos2d-x/install-deps-linux.sh,默认的 make 编译速度较慢,推荐添加 -GNinja 参数来使用 ninja 编译
  5. 使用编译器进行编译

编译要求

  • CMake 3.20+
  • Android Studio 2021.1.1+ 和 NDK r22+
  • 编译器支持 C++17 的 Linux (推荐使用Clang)
  • macOS 11.3+ 和 Xcode 13+
  • Windows 7+ 和 VS 2019+

运行要求

运行要求实际上由编译器决定,但大多数情况下应满足如下要求:

  • Android 5.0+
  • iOS 13+
  • macOS 10.15+
  • Windows 7+ 和 visual c++ 运行时

注意,iOS 13+ 和 macOS 10.15+ 是必须的,因为需要使用 std::filesystem来源)。

依赖图

LuaSTG-x
├ cocos-x
│  └ cocos-x-external
│    ├ cocos2d-x-gfx
│    ├ glslang
│    ├ openal-soft
│    └ SPIRV-Cross
├ cocos2d-x-imgui
│  ├ ImGui
│  ├ imgui_markdown
│  ├ ImGuiColorTextEdit
│  └ implot
├ cocos2d-x-live2d (optional)
│ ├ CubismNativeFramework
│ └ Cubism SDK for Native
├ cocos2d-x-video
│  └ FFmpeg (in lstgx_external)
├ lstgx_Audio
│  └ openal-soft (in cocos-x-external)
├ lstgx_external
│  ├ ANGLE (optional)
│  ├ BurstLinker
│  ├ FFmpeg (optional)
│  ├ libzippp
│  │ └ libzip
│  ├ Lua CJSON
│  ├ luafilesystem
│  ├ LPeg
│  ├ MicroTeX
│  ├ nanosvg
│  ├ NativeFileDialog
│  └ Yuescript (optional)
├ lstgx_Math
└ lstgx_LuaCore