BlenderCN论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 852|回复: 9

[仅是想法]将完成的node包装成插件

[复制链接]
发表于 2015-10-11 23:10:53 | 显示全部楼层 |阅读模式
想法的目的:只让用户看到他需要调整的参数,也只让他调整这些参数。让用户在他熟悉的标准Blender插件界面下,使用他人的节点成果


节点在blender的分量越来越大了,但是看到那蜘蛛丝般的连线,很头晕。而实际上,中间很多节点只是为了完成效果必须的,用户根本没必要、无需调整它们的输入、输出。如果把它们隐藏起来,就会清爽很多。
收缩中间节点是一个方法。但是如果有工具,把完成的节点系统,转换成blender的标准插件的形式,只让用户在熟悉的blender插件界面中调整,会不会更好呢?
我这里,以kmeirlaen使用animation node制作的、根据用户输入的时间画表盘的东西为例。
原始的链接在 http://blenderartists.org/forum/showthread.php?350296-Addon-Animation-Nodes&p=2949727&viewfull=1#post2949727

从这个帖子的上半部分,可以看到,作者也意识到了,他这里实际上只需要用户输入“小时”、“分钟”两个整数就可以了
但是使用an呢,用户看到的是帖子下半部分的一堆东西。对于不熟悉节点系统、或者不熟悉an的人来说,得花一点时间学习一下——请注意,这里的例子是相当简单的;实际可能碰到的节点,需要输入的东西更多
org.jpg

 楼主| 发表于 2015-10-11 23:13:53 | 显示全部楼层
如果,我们有办法把上面这个完成的节点设置,变成一个标准的blender插件,那么使用这个插件的步骤将是这样的:
这是我们的新项目界面,已经搜索到了插件,名字叫clock。启用
Clipboard01.jpg

回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-10-11 23:16:00 | 显示全部楼层
搜索到clock,准备使用
Clipboard02.jpg
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-10-11 23:20:32 | 显示全部楼层
注意,这个插件,是blender的标准插件,仅向用户暴露了Hour和Minute两个参数(在左边的红框内)
并且按照默认参数,在视图中生成了10:10的表盘

当然,这个插件只所以可以使用,其实是因为它默默的帮我们加载了kmeirlaen的节点设置,这一点,你从右下角的“节点编辑器”可以看到。我这里只是为说明问题,所以显示了“节点编辑器”。对于实际使用的情况,插件完全没必要向用户展示“节点编辑器”,以免徒增困惑

Clipboard03.jpg
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-10-11 23:23:32 | 显示全部楼层
既然插件,向大众用户暴露了调整“小时”、“分钟”的2个参数,那么这两个参数,当然应该是可以调整的——当然,也只有这两个参数可以调整
比如下图,调整时间为06:10
Clipboard04.jpg
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-10-11 23:27:15 | 显示全部楼层
希望这些图,清楚表达了我的意图
希望这些图,别限制了读者的思维。我已经说了,这里的表盘的例子,只是很简单的例子;如果一个an的节点,允许调整“帧”,那么转换的插件也需要提供这样的参数,让用户调整

我想问,这样的工具存在吗——我当然不想对每一个节点设计,都手工编写对应的插件,我问的是可以用程序自动生成吗?
回复 支持 反对

使用道具 举报

发表于 2015-10-12 00:03:30 | 显示全部楼层
给楼下添加一些补充:
1,目前an在node编辑器的右下角,有一个(模板)的选项,那里面现在可以调出好多个模板。
2,an在node编辑器中T键侧栏打开,上面已经有把节点树丢出成为代码块的按键。
3,牡蛎的想法,貌似类似max2016的MCG的想法。(或许可以参照这个)。
回复 支持 反对

使用道具 举报

发表于 2015-10-12 00:13:56 | 显示全部楼层
程序员的东西 我不是太懂
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-10-12 00:35:10 | 显示全部楼层
@习鱼
我可不想将做好的节点,又转换为代码。如果用户以后有需求或者能力去改动,代码不如节点直观
回复 支持 反对

使用道具 举报

发表于 2015-10-21 21:41:08 | 显示全部楼层
本帖最后由 imdjs 于 2015-10-21 21:51 编辑

或者可以把很多节点保存为一个预置,以后直接一键生成.
保存为预置的另一个好处是,就算以后这个节点的接口更新了,预置仍然可以按新接口名称生成之前所保存的节点与参数,相当于更新旧节点为新节点.
不过说了这么多,要实现这个还是需要一个可以保存自定义节点为预置的插件,虽然我也写了个保存材质预置的插件,不过理论是上可以保存自定义节点的,
只要按节点作者的规则填充好节点的接口与参数就可以,这里产生另一个问题就是要跟随节点作者更新去了解节点,不过并不是每个人都是那个节点作者的粉丝的,
有那闲情,不如直接写自己的节点好了.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

Blender最新中文教学视频|Blender头条|小黑屋|手机版|Archiver|Blender中国 ( 蜀ICP备17002929号 )360网站安全检测平台

GMT+8, 2019-8-23 05:07 , Processed in 0.031097 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表