Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OS-ImGui-Android

一个基于Dear ImGui的Android平台快速开发框架,专为游戏辅助工具开发而设计。

Platform Language License

🎯 项目简介

OS-ImGui-Android是一个简洁高效的ImGui开发框架,基于著名的Dear ImGui库构建。本项目专为Android平台优化,提供了完整的UI渲染、事件处理和游戏辅助功能开发支持。

核心优势:

  • 🚀 快速开发:几分钟内即可搭建完整的ImGui环境
  • 🎨 丰富组件:内置多种自定义UI组件和样式
  • 📱 Android原生:专为Android平台优化,支持ARM64架构
  • 🔧 易于扩展:模块化设计,便于功能扩展和维护
  • 🎮 游戏友好:针对游戏辅助工具开发场景优化

📸 菜单界面展示

OS-ImGui-Android菜单界面

OS-ImGui-Android框架的完整菜单界面展示

✨ 主要特性

🏗️ 代码框架

  • 简洁架构:清晰的代码结构,易于理解和维护
  • 模块化设计:功能模块分离,便于独立开发和测试
  • 高性能渲染:基于OpenGL ES 3.0的高性能渲染管线

🎨 UI组件

  • 自定义复选框:多种样式的复选框组件
  • 开关按钮:美观的开关切换组件
  • 滑动条:支持数值调节的滑动条组件
  • 颜色选择器:直观的RGBA颜色选择组件
  • 表格系统:灵活的数据展示表格

🛠️ 开发工具

  • 热重载支持:开发过程中支持UI实时更新
  • 调试模式:内置调试工具和性能监控
  • 样式系统:可自定义的主题和颜色方案

📋 系统要求

  • 操作系统:Android 7.0+ (API level 24+)
  • 架构支持:ARM64-v8a
  • 图形API:OpenGL ES 3.0+
  • 开发环境:Android NDK r21+
  • 构建工具:CMake 3.10+

🚀 快速开始

1. 环境准备

# 安装Android Studio和NDK
# 配置环境变量
export ANDROID_NDK_HOME=/path/to/android-ndk
export ANDROID_SDK_HOME=/path/to/android-sdk

2. 克隆项目

git clone https://github.com/756066377/OS-ImGui-Android-Backup-2025.git
cd OS-ImGui-Android-Backup-2025

3. 构建项目

# 创建构建目录
mkdir cmake-build-debug
cd cmake-build-debug

# 配置CMake
cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_HOME/build/cmake/android.toolchain.cmake \
      -DANDROID_ABI=arm64-v8a \
      -DANDROID_PLATFORM=android-24 \
      ..

# 构建项目
cmake --build . --target OSImGui -j$(nproc)

4. 运行示例

构建完成后,可执行文件将位于:outputs/arm64-v8a/OSImGui

💻 使用示例

基础窗口创建

#include "OS-ImGui.h"
#include "imgui.h"

void Imgui_demo() {
    // 创建测试窗口
    ImGui::Begin("测试窗口");
    ImGui::Text("欢迎使用OS-ImGui-Android!");
    
    // 添加交互组件
    static bool isLine = false;
    ImGui::Checkbox("绘制线条", &isLine);
    
    if (ImGui::Button("退出程序")) {
        Gui.Quit();
        exit(0);
    }
    
    // 使用自定义组件
    Gui.MyCheckBox("自定义复选框1", &isLine1);
    Gui.MyCheckBox2("自定义复选框2", &isLine2);
    Gui.SwitchForRight("右侧开关", &isLine5);
    Gui.SwitchForLeft("左侧开关", &isLine6);
    
    ImGui::End();
    
    // 根据状态绘制内容
    if (isLine) {
        Gui.Line(Vec2{0, 0}, Vec2{1000, 1000}, ImColor{255, 255, 255, 255}, 10);
    }
}

int main() {
    // 创建ImGui窗口并绑定渲染函数
    Gui.NewWindow("SurfaceName", Imgui_demo);
    return 0;
}

高级功能示例

项目包含完整的功能演示,涵盖:

  • 追锁系统:自瞄和子弹追踪配置
  • 人物透视:可视化设置和过滤选项
  • 物资绘制:物品高亮和分类管理
  • 系统设置:配置管理和调试工具

🏗️ 项目结构

OS-ImGui-Android/
├── CMakeLists.txt          # CMake构建配置
├── include/                  # 头文件目录
│   ├── OS-ImGui.h           # 主接口头文件
│   ├── OS-ImGui_Base.h      # 基础功能头文件
│   ├── OS-ImGui_Struct.h    # 数据结构定义
│   ├── imgui/               # Dear ImGui头文件
│   └── utils/               # 工具类头文件
├── src/                     # 源代码目录
│   ├── main_demo.cpp        # 主程序和功能演示
│   ├── OSImGui/             # 核心实现
│   ├── imgui/               # ImGui实现文件
│   └── utils/               # 工具类实现
├── Image/                   # 资源文件
│   ├── 1.png               # 菜单界面截图
│   └── fonts/               # 字体资源
├── outputs/                 # 构建输出
│   └── arm64-v8a/           # ARM64架构输出
└── cmake-build-debug/       # 构建目录

🔧 开发指南

添加新功能

  1. include/ 目录添加头文件声明
  2. src/ 目录实现具体功能
  3. main_demo.cpp 中集成到UI界面
  4. 更新CMakeLists.txt(如需要)

自定义样式

void CustomizeStyle() {
    ImGuiStyle& style = ImGui::GetStyle();
    
    // 修改颜色主题
    style.Colors[ImGuiCol_WindowBg] = ImVec4(0.1f, 0.1f, 0.1f, 0.9f);
    style.Colors[ImGuiCol_Button] = ImVec4(0.2f, 0.5f, 0.8f, 1.0f);
    
    // 调整间距和圆角
    style.WindowRounding = 8.0f;
    style.FrameRounding = 4.0f;
    style.ItemSpacing = ImVec2(8, 6);
}

🎯 应用场景

  • 游戏辅助工具:ESP、瞄准辅助、物品高亮等
  • 调试工具:游戏内存查看、性能监控
  • 可视化界面:数据展示、配置管理
  • 原型开发:快速UI原型验证

📈 性能优化

  • 渲染优化:批量绘制调用,减少状态切换
  • 内存管理:智能内存池,避免频繁分配
  • 事件处理:高效的事件分发机制
  • 资源缓存:纹理和字体资源缓存

🤝 贡献指南

欢迎提交Issue和Pull Request来改进项目!

提交规范

  • 使用清晰的提交信息
  • 添加适当的代码注释
  • 更新相关文档
  • 确保通过构建测试

📄 许可证

本项目基于MIT许可证开源 - 详见 LICENSE 文件

🙏 致谢

  • Dear ImGui - 优秀的即时模式GUI库
  • Liv - 项目灵感来源
  • 所有贡献者和支持者

📞 联系方式

如有问题或建议,欢迎通过以下方式联系:


⭐ 如果这个项目对您有帮助,请给我们一个Star!

About

Android Platform Rapid Development ImGui based on Dear ImGui - Backup Repository

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages