python - 3D 网格编辑器 GUI
问题描述
我使用 Blender 已经有一段时间了,我正在尝试使用 Python 制作一个包含 Blender 缝纫功能的计算机应用程序。但是,我现在明白没有 Blender GUI API 这样的东西。如果我既想使用 Blender 功能又想在 3D 网格编辑器中显示结果,我将如何创建这个应用程序?
解决方案
Blenders GUI 由 python 脚本控制。您可以用自己的替换所有标准布局脚本,也可以将窗口布局配置为仅显示您想要显示的内容。
从一个新文件开始,无论是启动 blender 还是创建新文件,都会读取名为 startup.blend 的首选项文件。此混合文件包含使用的窗口布局。这意味着您可以设置任何您想要的窗口布局并将其保存到 startup.blend 并在搅拌机启动时使用它。然后可以使用插件来添加面板和操作员,以使搅拌机以您想要的方式运行。
如果您希望灵活地使用普通版本的搅拌机以及您的设置,您可以在选择创建新文件时使用应用程序模板系统将您的设置置于选项中。
如果您想构建和分发您自己的搅拌机变体,您将需要设置和替换搅拌机源代码树中的 startup.blend。
至于控制视觉布局,您可以删除和创建适合搅拌机现有布局系统的面板,或者您可以设置一个只有 3D 视口的窗口并在 3D 视图中绘制您自己的界面。看看CGCookies retopoflow的视频演示作为一个例子,你可以在github 上查看插件的源代码。
推荐阅读
- go - `Listen` 和 `ListenTCP` 有什么区别?
- javascript - 使用 useState 和 localstorage 使 div 在关闭后仅出现一次
- php - 如何在下拉列表中隐藏选定的值?
- regex - 如何匹配一个字符串不包含特定单词的正则表达式,而没有前瞻/后面?
- python - 为什么我在 Pygame 中绘制后第二张图像没有出现在第一张图像之上
- javascript - 使用合并图像时无法加载图像
- arrays - Apexchart xaxis 标签在 Reactjs 中显示为数字而不是字符串
- android - 按钮未添加到“总”文本视图中
- udp - 如果 UDP 发送方发送了太多接收方无法接收的信息,会发生什么?
- node.js - NodeJs错误检查用户是否使用绑定控制器进行了身份验证