共有回帖数 0 个
-
Max节点编辑器介绍(MCG)现如今3dsMax2016官方版本已经正式发布了.我也终于可以出来透透气并且告诉大家为什么这一年多来你们一直都没有我的消息Eddie Perlberg把我跟Martin Coven以及其他的开发大神们还有测试人员锁在一个地下室直到我们完成了3dsMax用户所要求的的第一新功能经过我们的努力,终于研发出了一个3dsMax2016的新功能,称之为Max Creation Graph,或者简称为MCG.MCG允许用户使用可视化节点工作流程来创建修改器,几何体跟工具插件

使用MCG你可以在Max里面分分钟创建一个新的插件,只需要简单的把参数节点,计算节点跟输出接点链接一起便可.连接好的图表可以保存为XML文件或者跟其他的ZIP文件里面的元素打包在一起并且可以直接跟别的max用户共享每当MCG工具执行后,你会获得以下的一个结果
创建面板下"Max Creation Graph"分类里面新的原始几何体物体
修改器下拉列表里面新的修改器
新的Max脚本工具
新的Max脚本函数

执行之后,.maxtool旁边会生成两个文件
A MAXScript plugin wrapper (.ms)
一个Max脚本插件的包裹器(.ms)
节点系统编译之后的.NET函数文本文件(.txt)
MCG 不是 Softimage ICE先别管我们的用户反馈区的申请列表的标题(你可能会注意到这最初是由Martin Coven提出来的建议,在我雇佣他之前便已经提出了,我确定他应该很高兴他的建议最终能够实施),很显然,这并不是ICE系统被集成到了max中去.MCG是一个在.NET的框架之上开发出来的全新的可视化编程语言大家可能对另一个AD的可视化语言比较熟悉"Dynamo" ,并且能看发觉一些相似处.Dynamo 跟MCG很相似.(使用.NET来扩展是很简单的事情,并且可以支持一些函数程序的概念).但他其实是解释型语言而不是编译性语言.对于Dynamo来说,这种设计选择是很合理的,因为他设计出来的目的是为了参数型几何体建模,然而,这种语言的性能对于max用户想要在max里面创建工具来说是没有效率的3dsMax用户希望几何体的参数跟修改器的参数都是可以进行动画的.并且能够把结果在试图里面接近实时的显示出来.(通常,建筑物都不会跳舞,但是在max里面,他们是可以的.)我们基于这项需求,开发出了一个完整的编译器.如果你愿意请我喝啤酒的话我就唠叨更多的细节给你(或者...我有意无意的一边喝酒一边在博客里面码字)

功能性的数据流可视化编程语言MCG大部分都是传统的可视化编程语言.节点给数据提供传输,数据流通过输入链接来传输,并且最后把结果转为输出的”数值”MCG的一个特征便是,对于函数的链接输出,能够直接显示出结果来.这也就能够允许函数的解算在整个图表里面以数据的形式来传输.计算机科学里面,我们称之为一级函数当节点是从”函数”输出端链接过来的时候,整个图表左边的子图表都是作为一个函数来计算的,图表中未链接的,作为函数的参数.这等同于Lambda的抽象运算.详情请参阅之后的教程在MCG中,我们不仅仅把函数作为参数传递到更高级别的函数里面,类似于”映射”跟”合并”那样.我们也可以从”bind”这一类的操作符上来返还函数并且实现局部运算的功能,或者从”compose”那样的函数上来实现函数的合并.我们可以把函数储存在阵列里面.详情请参阅之后的教程

MCG需要注意的几件事情:图表里面的大部分数据都是不可变的数据结构("INode", "Cache", "Random"是例外).也就是说,MCG几乎就是纯函数式的编程语言(类似于Haskell).举例来说,当你传输数据到”SetValue”节点上的时候,你所获得的数列是一个全新的数列,原始的那个会保留,不会被改变.这样一样多线程解算(也就是并行计算)便能够快速便捷的执行.我向大家保证,之后会有更多的关于多线程计算的文章.未来我们是上市的牛逼大公司,并且有XXXXX协议,所以我们不能尽情的讨论产品的未来.这让我很郁闷.因为我花了大把大把的时候去讨论探究未来的新功能,远比老板花的时间多,但是却不能够说出来最后,我希望大家能够感受到,就像我承诺你们的那样,是我们的用户直接来影响到max的未来.没错,一些牛逼的功能可能需要花上四年时间才能够实现,并且有些时候我们也不能告诉大家我们正在开放.不管怎么说,这是一个竞争相对激烈的行当,但是我们有足够的耐心.我永远都不会忘记,没有我们用户的支持就没有3dsMax,我也不可能实现我梦想中的工作.


楼主 2015-07-22 18:40 回复
Copyright © 2010~2015 直线网 版权所有,All Rights Reserved.沪ICP备10039589号
意见反馈 |
关于直线 |
版权声明 |
会员须知