Unity mcp并使用claude code制作游戏

Unity mcp

Unity MCP 是一个官方工具,能让 AI 编程助手直接与 Unity 编辑器交互并执行自动化任务。 它的核心是建立在开源的 模型上下文协议 (Model Context Protocol, MCP) 之上,旨在定义一个安全、结构化的方式,让 AI 代理能够与外部工具互动

为什么要使用mcp

如果不使用,agent只能深入到给你写脚本,写逻辑,最多可以写脚本服务,使用之后可以识别场景,查看报错,脚本挂载,创建物体,ui等等

Github仓库

CoplayDev/unity-mcp: Unity MCP acts as a bridge, allowing AI assistants (like Claude, Cursor) to interact directly with your Unity Editor via a local MCP (Model Context Protocol) Client. Give your LLM tools to manage assets, control scenes, edit scripts, and automate tasks within Unity.

安装于配置

1 Unity 2021.3 LTS+

2 Python 3.10+uv https://docs.astral.sh/uv/getting-started/installation/

3 一个 MCP 客户端 :各种agent,这里使用cc和vscode

安装 Unity 包

在 Unity 中:Window > Package Manager > + > Add package from git URL...

git网络出错的就直接在网页下载然后导入

包导入之后windows会出现mcp for unity

配置unity端

检查第二个Local Setup Window是否正确安装

确认路径没有中文!!!

然后启动服务器即可

配置cc端

创建一个.mcp.json文件在工程目录下

复制代码
{
  "mcpServers": {
    "unityMCP": {
      "type": "http",
      "url": "http://localhost:8080/mcp"
    }
  }
}

重启所有

启动服务器

最后询问他 是否正确连接mcp服务

更多配置问题可以参考大佬(我的vscode一直出问题,vscode插件cc懒得配了就直接在vs终端用)UnityMCP+Claude+VSCode,构建最强AI游戏开发环境_unity-mcp vs-CSDN博客

md文档使用小技巧

我们知道使用md文档来规范AI的使用,怎么做才是更有效的呢,这里分享一些我的经验

1. MCP连接规则:必须连接好MCP才能开始工作

最重要的一点,因为ai经常失忆,不知道自己有能直接操控的能力,浪费时间浪费token去写脚本控制,或者更差的方法,每次开始使用的时候不光要问他是否正确连接,还要写到md文档中,确保他看到。

2. AI助手角色定位

我这里就是ai生成的,按自己的需求就行

你是一名顶级游戏开发师,具有以下核心能力:

  • **强大的框架构筑能力**:能够设计并实现高可扩展性、高性能的游戏架构

  • **Bug发现与解决能力**:快速定位问题根源,提供优雅的解决方案

  • **游戏优化专长**:精通性能优化、内存管理、渲染优化等技术

  • **Unity深度掌握**:熟练运用Unity引擎的各项功能和最佳实践

  • **系统设计思维**:能够从全局角度设计游戏系统,确保各模块协调工作

3. 项目文件夹结构

在每次工作结束的时候更新下文件夹结构,各种资源模型都是干什么的,下次能节省token也能更快

4. 游戏设定

这部分就要好好的打磨让ai写,包括敌人设定,角色,武器,地图,关卡,成长等等写详细这样AI不会给你写出奇怪的用不到的东西

5. 需要完成的功能

这部分就结合上面设定,每次做完那些做了那些还没完成去更新

6. 更新日志

日志我认为还是有需要的,明天干了什么改了什么bug

1-4 我写到一起在开始定下就不会频繁修改,56写一起。

开始重中之重

在项目刚开始第一次使用AI是最重要的,因为整体的构造就完成了,所以我们先不着急,我们先写设定文档,把整个游戏的框架逻辑写出来,再使用AI让他去看md文档。后序才不会出错或者出现bug。

mcp技巧

Unity MCP 服务能力

Unity MCP (Model Context Protocol) 可以帮你:

场景与对象管理

  • 创建/删除 GameObject
  • 查找场景中的对象
  • 管理对象层级关系

脚本操作

  • 读取/编辑脚本文件
  • 创建新脚本组件
  • 修改 MonoBehaviour 属性

资源管理

  • 加载场景
  • 导入资源
  • 管理预制体 (Prefab)

运行控制

  • 启动/停止游戏
  • 进入/退出播放模式
  • 暂停/恢复

Inspector 操作

  • 查看/修改组件属性
  • 添加/移除组件

了解mcp,而不是和之前一样傻傻的报错再把报错复制给agent让他改,比如里面查看con,可以明确告诉他让他去查看报错和debug之类的,还可以启动,停止游戏,用来测试,只不过这个效果不高。

结语

现在mcp对于模型的识别能力还不强,还有动画系统,但是配合人还是能做出来东西的,对llm的要求也比较高,我使用的是GLM和Minmax,效果都一般没有到想想的地步,经常失忆,或者直接不管之前直接出新的脚本,产生多余脚本之类,现在人为的工作还是在维护迭代和修改这里,以后估计就没这么麻烦了。

这是我做的项目,有兴趣可以玩一下。

Gaagaga/幸存者:氛围编程游戏

相关推荐
程序员正茂2 小时前
Unity3d使用SRDebugger屏幕输出调试信息
unity·srdebugger
张老师带你学2 小时前
unity资源 buildin 低多边形 小镇村
科技·游戏·unity·游戏引擎·模型
PassionY2 小时前
Unity NGO 系列教程(五):如何构建多人联机区域触发系统
unity·rpc·ngo·网络触发器·serverrpc·networkvariable·authority
小布的学习手记2 小时前
拒绝“传话游戏”!DenseNet 如何让神经网络开启“群聊”模式
人工智能·神经网络·游戏
RReality3 小时前
【Unity UGUI】InputField 输入框全解
unity·游戏引擎
呆子也有梦3 小时前
游戏服务端大地图架构通俗指南:从“分区管理”到“动态调度”
服务器·后端·游戏·架构·系统架构
南無忘码至尊3 小时前
Unity学习90天-第3天-认识触屏输入(手游基础)并完成手机点击屏幕,物体向点击位置移动
学习·unity·c#·游戏引擎·游戏开发
南無忘码至尊3 小时前
Unity学习90天-第3天-认识C# 集合与常用类并实现生成随机位置的 10 个立方体
学习·unity·c#
Swift社区3 小时前
鸿蒙游戏的数据流是怎么跑的?
游戏·华为·harmonyos