告别鼠标与命令行,让AI听懂你的设计意图
写在前面
作为一名设计师,我每天都要在花费大量时间建模。从画线、拉伸到布尔运算,每一个操作都需要精确的坐标输入或鼠标点击。当模型复杂时,这种“手动挡”的操作方式常常打断设计思路。
最近,我自己开发了一个小的插件,可以把软件和大模型进行沟通。后来我发现了一种全新的工作流:用自然语言与Rhino对话,让AI自动完成建模。这不是科幻,而是基于MCP(Model Context Protocol)协议的“Vibe Coding”实践,这种思路可以拓展到任何你在使用的工具。
本文将完整记录我如何通过Cline(VS Code的AI编程助手)和RhinoPilotHelper插件,让AI听懂我“在box上画一个半径为5的圆”这样的一个并不复杂的指令,但是他要听懂在box上,也算是一个进步,要自己去分析画布了,最后Rhino中生成模型。
一、什么是Vibe Coding?
“Vibe Coding”是近期AI编程领域兴起的一个概念——开发者不再逐行敲代码,而是用自然语言描述意图,由AI自动生成并执行代码。这套理念同样可以延伸到3D建模领域:
设计师用口语描述几何约束,AI理解并转化为Rhino命令,最终生成精确的3D模型。
传统建模是“手动的”,而Vibe Coding是token“意图驱动的”。你只需要说“在长方体顶部中心画一个圆”,剩下的坐标计算、图层管理、颜色设置全部交给AI。
二、技术栈:打通Rhino与AI的桥梁
要实现这个目标,需要三个核心组件:
| Rhino插件 | rphstart命令启动) | |
| MCP服务器 | @mrbeandev/rhinopilot-mcp | |
| AI客户端 |
其中,MCP(Model Context Protocol)是一个开放协议,专门用于AI应用与本地工具之间的通信。通过MCP,AI可以像调用函数一样使用Rhino的建模能力。
三、实战:让AI在box上画一个半径为5的圆
下面是我亲测的一个完整案例。我在Rhino中已经有一个名为“原点盒子”的长方体,然后向Cline输入:
“在犀牛的box上再画一个半径为5的圆放在box上。”
第一步:AI自动规划任务
Cline收到指令后,自动分解为以下步骤:
检查Rhino连接状态
获取当前文档信息,寻找已有的box
获取box的几何信息(位置、尺寸)
创建新图层并设为当前
在box顶部中心创建半径为5的圆
验证结果并截图
第二步:工具调用过程
Cline背后连接了MCP服务器,该服务器提供了32个Rhino工具,包括:
get_document_info:获取文档信息
get_object_info:获取对象属性
create_layer、set_current_layer:图层管理
execute_rhinoscript:执行Rhino Python脚本
create_circle:直接创建圆(但后来发现参数格式问题,改用脚本方式)
AI会根据工具的描述和参数schema,自动选择最合适的工具。例如,当发现create_circle需要法向量时,它灵活切换到execute_rhinoscript,用Python代码完成创建。
第三步:自动生成的Rhino Python脚本
最终,AI通过execute_rhinoscript工具发送了以下代码:
python
在box顶部创建圆center=(0,0,10)# box高度为10,顶部中心radius=5plane=rs.WorldXYPlane()plane=rs.MovePlane(plane,center)circle_id=rs.AddCircle(plane,radius)rs.ObjectName(circle_id,"box顶部的圆")rs.ObjectColor(circle_id,(255,0,0))# 红色
这段代码在Rhino中执行后,一个红色的圆精准地出现在box的顶部中心。
第四步:验证与输出
AI还自动调用了capture_viewport_image工具,截取了Rhino视口的图片,并以base64格式返回给我。最终文档中有三个对象:原来的box、新创建的红色圆、以及之前的一个绿色圆。
整个过程中,我完全没有手动输入任何坐标或代码,只是说了一句话。
四、技术原理浅析
这套工作流的核心是MCP协议。MCP服务器启动后,会向客户端(如Cline)提供一个工具列表,每个工具都有名称、描述和输入参数定义(JSON Schema)。AI大模型(如Claude 3.5 Sonnet)会根据用户输入的自然语言,选择最匹配的工具,并生成符合Schema的参数JSON。
例如,create_circle工具的定义可能如下:
json
AI会根据这个schema自动填充参数。当需要更复杂的逻辑时(如计算box顶部中心),AI会切换到execute_rhinoscript工具,写Python代码。
这种设计使得AI既能快速调用简单工具,又能通过脚本实现任意复杂操作,灵活性极高。
五、优势与意义
1. 降低学习门槛
新手不需要记忆Rhino的几百个命令,也不需要学习Python脚本,用自然语言就能建模。
2. 提升设计效率
设计师可以专注于“做什么”,而不是“怎么做”。重复性操作(如创建图层、设置颜色、计算中心点)全部由AI自动完成。
3. 可复现性与协作
AI生成的脚本可以保存、分享、修改。团队中可以建立“自然语言建模库”,让设计意图和实现方法一起沉淀。
4. 跨软件生态
MCP协议不仅限于Rhino,还可以连接Photoshop、Blender、CAD等。未来,设计师可以通过统一的AI界面,同时控制多个设计软件。
六、局限与展望
当然,目前这套方案仍有局限:
本地配置:需要安装Rhino插件、Node.js环境、VS Code扩展等,对普通设计师也没有门槛,把我的文章给deepseekchat,他会告诉你一步步的操作步骤。
AI理解偏差:对于模糊的指令(如“画一个漂亮的圆”),AI无法自动决定位置、颜色等,仍需明确约束。
复杂模型仍需脚本:对于放样、网格编辑等高级操作,AI可能需要生成较长的脚本,稳定性有待提高。
但展望未来,随着MCP生态的完善和AI推理能力的增强,我相信自然语言建模将成为3D设计的标配。我们不再被软件操作束缚,而是像与一个虚拟助手对话一样,轻松地将想法变成模型。
七、如何开始你的Vibe Coding之旅?
安装Rhino 8(Cpython),并下载RhinoPilotHelper插件。
安装Node.js和VS Code,在VS Code中安装Cline扩展。
配置MCP服务器:在Cline的设置中添加如下配置:
json
{"mcpServers":{"rhinopilot":{"disabled":false,"timeout":60,"type":"stdio","command":"npx","args":["-y","@mrbeandev/rhinopilot-mcp"]}}}
启动Rhino,在命令行中输入rphstart启动插件服务。
打开Cline,在对话框中输入你的建模需求,比如“给我建一个埃菲尔铁塔的模型”试试。
结语
当我看到AI自动在Rhino中画出那个圆,放在box上时,我意识到:设计的未来已经到来。我们不再需要成为软件专家,只需要成为创意的表达者。Vibe Coding让自然语言成为新的“建模语言”,而AI就是最忠实的执行者。
希望这篇文章能激发你的探索欲望。如果你也是设计师或开发者,不妨试试这套工作流,体验一下“用说话来建模”的奇妙感觉。
欢迎在评论区分享你的Vibe Coding体验,或者提出你遇到的配置问题。让我们一起推动设计工具的民主化!
作者简介:一位热衷于探索AI设计交叉领域的闲人。本文基于真实测试案例撰写,所有截图与代码均来自实际运行结果。
关键词:Vibe Coding、Rhino自然语言建模、MCP协议、AI辅助设计、Cline、RhinoPilotHelper
夜雨聆风