Unreal Analyzer Mcp

Unreal Analyzer Mcp

🚀 UnrealCodeAnalyzer 中文文档

UnrealCodeAnalyzer 是一款强大的代码分析工具,专为 Unreal Engine 和自定义代码库量身打造。它具备全面的代码审查、API 文档生成以及游戏类型特定分析等功能,能有效提升代码开发和管理的效率。

🚀 快速开始

安装与配置

  1. 安装依赖
npm install
  1. 设置代码库路径 在初始化时指定 Unreal Engine 或自定义代码库的路径。
  2. 运行分析工具
node src/UnrealCodeAnalyzer.ts --path /your/unreal/engine/path

运行测试

npm test

✨ 主要特性

核心功能模块

  1. 代码分析工具
    • 类层次结构分析:通过继承关系和接口实现,提供完整的类信息。
    • 成员分析:深入解析每个类的方法、属性和事件。
    • 引用查找:快速定位类、方法或变量的使用位置。
  2. API 文档生成器
    • 自动生成 API 文档,包括语法示例和用法说明。
    • 支持按类别和模块进行过滤。
  3. 游戏类型知识库
    • 针对不同游戏类型(如射击、RPG)提供特定功能组件分析。
  4. MCP 服务器集成
    • 提供与 Epic 的 Material Change Protocol (MCP) 服务器的交互能力,支持工具注册和请求处理。
  5. 学习资源中心
    • 整合 Unreal Engine 官方文档、教程视频和社区资源。

项目特点

  • 模块化设计:各功能模块独立可扩展。
  • 高性能分析:优化的代码处理流程确保快速响应。
  • 多平台支持:支持 Windows、Linux 和 macOS 系统。

📦 安装指南

安装依赖

npm install

设置代码库路径

在初始化时指定 Unreal Engine 或自定义代码库的路径。

运行分析工具

node src/UnrealCodeAnalyzer.ts --path /your/unreal/engine/path

💻 使用示例

基础用法

分析类层次结构

获取完整的继承关系和接口实现:

const analyzer = new UnrealCodeAnalyzer();
const classHierarchy = analyzer.analyzeClass('MyClass');

成员分析

解析指定类的所有成员:

const members = await analyzer.analyzeMembers('MyClass', true);
// 包含方法、属性和事件的详细信息

引用查找

查找符号在代码库中的所有引用:

const references = analyzer.findReferences('MyFunction');

代码搜索

根据文件模式搜索代码片段:

const results = await analyzer.searchCode(
'some search pattern',
{ extensions: ['.cpp', '.h'], directories: ['src'] }
);

子系统分析

分析特定 Unreal 引擎子系统的相关信息:

const subsystemInfo = await analyzer.analyzeSubsystem('Physics');
// 返回核心类、关键特性等信息

高级用法

分析 Unreal Engine 类

const analyzer = new UnrealCodeAnalyzer('/path/to/UnrealEngine');
const FVectorClass = await analyzer.getClass('FVector');
console.log(FVectorClass.hierarchy); // 输出继承关系

生成 API 文档

const docGenerator = new ApidocGenerator();
docGenerator.generateDocumentation('MyClass', '/output/path');

📚 详细文档

文件结构

unreal-code-analyzer/
├── src/
│   ├── UnrealCodeAnalyzer.ts       # 核心分析类
│   ├── Analyzers/                 # 各种代码分析器
│   │   └── CodeSearchAnalyzer.ts  # 代码搜索分析器
│   ├── Servers/                   # MCP 服务器实现
│   │   └── McpServer.ts          # MCP 服务端逻辑
│   ├── Documenters/              # 文档生成工具
│   │   └──apidoc-generator.ts    # 自动文档生工具
│   └── TestSuites/               # 测试套件
│       └── UnrealCodeAnalyzer.test.ts  # 核心功能测试
├── public/
│   ├── index.html                 # 主界面
│   └── assets/                   # 静态资源文件夹
└── package.json                  # 项目依赖配置

使用说明

分析类层次结构

获取完整的继承关系和接口实现:

const analyzer = new UnrealCodeAnalyzer();
const classHierarchy = analyzer.analyzeClass('MyClass');

成员分析

解析指定类的所有成员:

const members = await analyzer.analyzeMembers('MyClass', true);
// 包含方法、属性和事件的详细信息

引用查找

查找符号在代码库中的所有引用:

const references = analyzer.findReferences('MyFunction');

代码搜索

根据文件模式搜索代码片段:

const results = await analyzer.searchCode(
'some search pattern',
{ extensions: ['.cpp', '.h'], directories: ['src'] }
);

子系统分析

分析特定 Unreal 引擎子系统的相关信息:

const subsystemInfo = await analyzer.analyzeSubsystem('Physics');
// 返回核心类、关键特性等信息

错误处理

  • 常见错误
    • 路径未设置:初始化时必须指定代码库路径。
    • 无效搜索模式:确保搜索模式正确无误。

性能考虑

  • 优化建议
    • 使用默认过滤器减少分析范围。
    • 对大型项目,建议分模块进行分析。

测试

运行测试

npm test

编写自定义测试

describe('UnrealCodeAnalyzer', () => {
it('should analyze class hierarchy', async () => {
// 测试逻辑
});
});

贡献指南

  1. 提交问题 通过 GitHub 提交 issue 报告问题或提出建议。
  2. 参与开发 Fork 仓库并在自己的分支上进行开发,完成后发起 Pull Request。

🔧 技术细节

代码分析工具

  • 类层次结构分析:通过继承关系和接口实现,提供完整的类信息。
  • 成员分析:深入解析每个类的方法、属性和事件。
  • 引用查找:快速定位类、方法或变量的使用位置。

API 文档生成器

  • 自动生成 API 文档,包括语法示例和用法说明。
  • 支持按类别和模块进行过滤。

游戏类型知识库

  • 针对不同游戏类型(如射击、RPG)提供特定功能组件分析。

MCP 服务器集成

  • 提供与 Epic 的 Material Change Protocol (MCP) 服务器的交互能力,支持工具注册和请求处理。

学习资源中心

  • 整合 Unreal Engine 官方文档、教程视频和社区资源。

📄 许可证

[项目许可证信息]


如需更多信息,请参考项目的 GitHub 仓库或联系开发团队。

相关资源

  • 0 关注
  • 0 收藏,33 浏览
  • system 提出于 2025-10-07 01:21

相似服务问题

相关AI产品