field节点相比创建polymesh之类的节点而言要复杂一些。主要有以下几点不同:
1、多加入了openMayaFX库;
2、在初始化插件时也有一些不同;
MStatus initializePlugin( MObject obj )
{
MStatus status;
MFnPlugin plugin(obj, "","2012", "Any");
status = plugin.registerNode( "DynExprField",DynExprField::id,&DynExprField::creator,
&DynExprField::initialize,MPxNode::kFieldNode );
if (!status) {
status.perror("registerNode");
return status;
}
}
registerNode参数列表最后加上MPxNode::kFieldNode,表明是field节点。相应地,在.h文件中继承的基类MPxNode也需改为MPxFieldNode;
class dynExprField: