C4D插件结构介绍
C4D插件的安装目录有两个位置,一个是安装程序下的plugins目录,另一个在配置文件夹里的plugins目录。插件后缀该为.xlib, .cdl64, .dylib, .cob,.pyd, .pypv(加密文件)。 C4D 启动后,寻找并执行此目录下所有以.pyp 或 .pypv结尾的插件。一个简单的插件如下:
这个插件不好玩,就能输出个hello world! 但是,我们可以在程序的各个部分注册插件钩子。
所有插件的钩子都从 BaseData 继承而来, 这些类包含能被C4D调用的方法。 MessageData 的例子:
向C4D注册插件需使用 Register () 。 注册函数可接收实例也能接收类,在内部自己创建对象:
plugins.RegisterCommandPlugin(id=PLUGIN_ID, str="TestBase-Plugin", info=0, dat=SampleData())
NodeData的注册方法需要一个类名:
数据类的声明周期还有点说道,上面的例子中将新的实例传给了注册函数,在C4D的session周期内此实例都存在。其构造和析构函数正常调用,不用多想多做。需要将名字传给注册函数的数据类在C4D的节点上游对应的 1:1 标志,其生命周期和node一样,分配和删除都由C4D控制。其构造和析构也如常调用,但C4D会额外调用 NodeData.Init() 。
.pyp 或.pypv 可以放在插件目录,将其组织成层次会更好。 插件的标准层次结构如下:
主文件myPlugin.pyp 注册了钩子。 res目录包含插件资源,现指dialogs,description, strings。
每个description都会有一个.h文件,枚举了description用到的常量。 查看Descriptions in cinema4D。 每个dialog包含自己的 .res文件。 c4d_symbols.h包含了.res使用的常量。
可能会有个string_xx的目录来做国际化,xx是两个目录,代表一种语言,依据是iso 639,iso3361-1. 当前C4D有一下编码:
每种语言的目录应该包含dialog的.str文件。 c4d_string.str是给其他资源用的。 的做法是先做一种语言,翻译前拷贝一份。后你可以有很多文件,例如插件的icon和logo,这些可以方便地通过 file 访问
PluginMessage(id, data)
定义此函数可以接收插件信息。 可以从C4D或者从其他插件调用GetPluginMessage()
随时接收C4D的命令行参数,实现PluginMessage() 填入 C4DPL_COMMANDLINEARGS 信息:
C4D的函数重载,重编译.pyp文件。 被pyp文件import的库不会reload. python先检查模块是否导入, 已导入就跳过,并建立引用.
当PluginMessage()接收到 C4DPL_RELOADPYTHONPLUGINS , 可以用reload()来强制重载python模块. 此处可以关闭以前打开的资源(socket,file等)
添加自己的菜单, 在PluginMessage()中拦截 C4DPL_BUILDMENU, 并调用GetMenuResource()来接收主菜单容器,下面是一个完整的例子。
13个C4D绘图建模必备常用插件介绍
要想用C4D做出好的效果,必定少不了各种插件,但是现在可使用的C4D插件实在是太多了,本文整理了一些广受好评的C4D绘图插件供大家参考。 上车领取戳我个人主页哦
1 Light Kit Pro 3 布光插件:一键给场景布光,多种预设可选,灯光强度和色温可控,只要将默认下图中的球体替换成自己的模型即可,免去不必要的布光方面的时间浪费
2 Trypogen 镂空插件,就是将模型进行镂空,直接将模型置于插件的子级 ,然后点击该插件调整相应的参数即可
3 Topowire 线条生成插件,直接将你的模型作为该插件的子级即可
4 reeper 绳索生成插件,需要一根样条线作为该插件的子级即可
5 Dual Graph 另一种镂空插件,在球体特别是二十面体类型的球体中使用为广泛
6 proc3durale2 另一种镂空插件,海绵多孔类必备插件
7 NitroCap 封口插件,与C4D默认的封口命令来说,形成的封口的面都是由四边面组成,对于建模布线要求严格的同学来说可以用一下,可以优化模型布线,减小电脑的压力
8 Tools4D Voxygen 像素插件,将模型像素化,默认是正方体,可以通过改变Links中的几何体来改变,整体的球的大小也可以在插件的属性中进行改变
9.MeshBoolean v1.6 for Cinema 4D布尔工具
布尔对象之后还可以解决布线的问题,不会产生乱线。
10.Selections Suppletives v1.8 选择插件
准确、的选择各种面对象,不用逐个去添加选择复杂的各种形状的面。
11.C4D多变形封闭孔洞插件 C4DZone Quad Caps 1.0
一键封孔洞解决四边面布线的问题,速度还是非常地快。
12.PolyCircle v1.51(点成圆插件)
只需鼠标一点就可以把不规则的点排成规则的圆形,非常。
13.QuadRemesher四边形网格模型重拓扑C4D
对高模进行重拓扑之后还可以自定义面数、是否对称等,操作简单功能强大。
该文章原作者为@李香香,仅供参考,如有收获,请为作者李香香点赞分享,若此篇文章侵犯到您的权益请联系我们删除,谢谢!
转载请注明出处:https://www.c4d.com/cgnews/jingyan/273.html