范文一:论文格式修改器
篇一:珍藏版论文修改秘籍
常见的修改方法总结:
1.替换关键字
2.打乱句子结构
3.改写标红的句子
4.不要删除标红的句子
5.不要改变标红段落总字数
6.关键字用同义替换
一、本检测帮助您顺利通过学校检测
感谢您使用知网的学位论文检测系统VIP版本检测自己的学
位论文,本检测系统和学校一样,都是上传到知网的服务器检测,所以只要您给我的论文和给学校的一样(包括文件形式、目录大纲级别等),检测结果就一样。
二、检测报告解读
1、首先看 总-xx% 的截图文件(有些是直接下载所截图的
1
网页,会命名为”xxx-文献分段浏览.html”,学位论文检测系统是整篇上传,如果没有这个文件肯定不是学位论文检测系统检测的。
(1)截图或者分段浏览上面有学术不端文献检测系统4.0(或TMLC)的标志,说明是用VIP版本检测的。
(2)上部左侧有文章及作者信息,还有总文字复制比和总重合字数。大部分学校基本只看总文字复制比这个指标,具体要求各个学校不同,一般5%-30%。
(3)上部中间偏是参考文献字数,系统会自动识别文章末尾的参考文献,如能识别就会单独放在这里,不参与检测。
(4)截图下部是各段落的抄袭比例,系统会识别文章的大纲目录,如果能
被正确识别就会按照章节进行分段,否则会自动分段。
(5)总文字复制比由各段落复制比加权平均得来。
2、然后看文本复制检测报告单,这个是系统自动导出的检测报告,并非手工拼凑。
(1)最上部是文章及作者信息,总复制比以及比对库范围等内容。
(2)然后是文章及段落抄袭率概要,此部分对应总截图文件。
(3)接着就是各段落的详细检测报告,包括被抄袭文献的信息,并且系统识别出来的抄袭的文字会被标红处理,您
2
只要修改红字就可以了。
三、修改建议
1、知网学位论文检测为整篇上传,格式对检测结果可能会造成影响,需要将最终交稿格式提交检测,将影响降到最小,此影响为几十字的小段可能检测不出。对于3万字符以上文字较多的论文是可以忽略的。
2、上传论文后,系统会自动检测该论文的章节信息,如果有自动生成的目录信息,那么系统会将论文按章节分段检测,否则会自动分段检测。
3、有部分同学反映说自己在段落中明明引用或者抄袭了其他文献的段落或句子,为什么没有检测出来,这是正常的。中国知网对该套检测系统的灵敏度设置了一个阀值,该阀值为5%,以段落计,低于5%的抄袭或引用是检测不出来的,这种情况常见于大段落中的小句或者小概念。举个例子:假如段落1有10000字,那么引用单篇文献500字以下,是不会被检测出来的。实际上这里也告诉同学们一个修改的方法,就是对段落抄袭千万不要选一篇文章来引用,尽可能多的选择多篇文献,一篇截取几句,这样是不会被检测出来的。
4、针对标红文字的修改方式除了3中提到的外,还有改词、换句、改变描述方式(变原句为倒装句、被动句、主动句等)、打乱段落顺序、删除关键词汇、关键句等。经过实践证明,使用以上方法结合,可有效降低复制比,保证顺利
3
通过。
例如下句:过热故障中的过热与变压器正常运行下的发热是有区别的,正常运行时的其发热源来自于绕组和铁芯,即铜损和铁损,而变压器过热故障是由于受到有效热应力而造成的绝缘加速劣化,它具有中等水平的能量密度。
几乎被标红,说明与相似文献存在重合和高度相似,经过以上方式结合,本
句可改为:
过热故障中出现的过热容易与变压器正常运行下的发热相混淆,后者是因为其绕组和铁芯会出现铜损和铁损的现象,这是正常运行过程中的发热,而变压器过热故障是受到有效热应力造成的绝缘加速劣化,具有中等水平的能力密度。
这样修改几乎可以降低抄袭率一半。
四、注意
知网检测由于是采用模糊算法,如果整体结构和大纲被打乱,可能引起同一段落的文章检测前后标红不一致,这是正常的,所以请亲们在修改标红的时候尽量变换句式,不要打乱论文原来的整体大纲和结构,同时本店再次承诺,本店所使用的知网学位检测系统和由于全国高校的相同,对比相同的数据库,所以本店保证检测结果肯定和高校结果一样。
版本二
4
论文修改密集 躲避学术不端检测 论文修改方法介绍
学术不端检测系统简介
在每个学生毕业时都要写一篇学位论文,现在学位论文的过关不仅是要求过答辩就OK,还要通过学术不端检测~自从2008年各高校使用中国知网论文学术不端检测系统后,每年各高校都会使用该系统对每届毕业生的论文进行一下测试,此系统不是软件,不是下载一下就可以用的。软件在北京的中国知网,各高校也只是拥有账号和密码,可以进去提交论文,且上传文章的篇数是根据本校毕业生的人数来定的。一般每年若有1000人毕业,该校会有1020个检测指标使用。学校的检测是免费的。
学校将论文上传到该系统后,文章就会与中国知网所收录的期刊文章、报纸
文章、本、硕、博论文库等库存内容进行比对。全文比对结束后,会出现一个百分比,就是你的文章抄袭别人内容占你整篇文章的百分比。这个百分比如果超过本校的规定指标(一般学校规定是不准超过30%,有的学校规定是不准超过10%,这些是各个学校自己定的,没有定论),如超标,就会被推迟答辩和取消授予学位资格。这已经成为事实,各高校都有案例可查。
有的同学说,我不担心,我引用了。我们的回答是:机器检测,说不准,机器毕竟是机器。如果超标,哭都来不及。
5
现在您不用担心了~~~
可以到我店进行提前检测,检测后进行相关的修改,躲过学校的最终检测,避免自己因此耽误毕业。
强烈呼吁广大同学,不要把希望寄托在学校的免费检测上,那次检测如果结果不妙,将会成为您终生的遗憾~
现在江湖中流传多份修改密集。店主根据多年的工作经验总结,实际上很简单:就是改变句子的结构。比如,将:“弯变的月亮”改变成:“天上有个弯弯的像镰刀一样的月亮”。这样改后,就是创新了,至少可以躲过检测系统了。还有一个比较急办方法,抄书。因为不管是中国知网还是万方,哪家公司也没有收录书籍。但你要看清楚,书的封面要写了“中国优秀博士论文??”,这样的书肯定已经被收录了,可以抄教材等。但店主还是友情提示和强烈建议下:身边坏人多,为将来的飞黄腾达,尽量不要抄太多,被别人举报的话一下就声败名裂了。但急时倒可以采用此法。
具体点,就把店主在江湖中搜集到的的有关内容汇集一下:
江湖传说一
改词、换句、改变描述方式(变原句为倒装句、被动句、主动句等)、打乱段落顺序、删除关键词汇、关键句等。经过实践证明,使用以上方法结合,可有效降低复制比,保证顺利通过。
6
江湖传说二
应对cnki中国知网学术不端论文检测系统之修改论文技巧
论文测谎仪(cnki中国知网学术不端论文检测系统)在一定程度上遏制了明目张胆的学术作假行为,但也助长了造假的水平进化。
“反抄袭”软件遭遇大学生“反反抄袭”,越来越多的学生已经开动了“脑筋”。毕竟大家从小就在应试教育中摸爬滚打,大家早就练就了一身超常的反侦察功夫,“道高一尺,魔高一丈”,为了对付“反抄袭”软件,大学生想出了五花八门的“反反抄袭”密招。
“反反抄袭”密招一:改写
躲避“论文测谎仪”的方法听起来有些笨,但却很“实用”,那就是——改写。“不是论文不能抄,要看你会抄不会抄~”。
东拼西凑其实并没有过时,关键在于要仔细,不能露出马脚。首先在不同的资料当中找到我需要的东西,然后把每句话变变句式,换换说法,加一些解释性的扩充,略作增删,最后把这些部分组织到一起,论文就大功告成了。虽然繁琐一点,但是最后出炉的论文,绝对就像去韩国做了整容手术,焕然一新~再牛的测谎仪见到我这论文,估计也只有哀叹的份儿。
“反反抄袭”密招二:翻译
7
要抄,就不能留下任何痕迹。她的方法更加繁琐,但也更加保险,那就是翻译。跨语言的论文测谎系统还没有研发出来。广泛查阅外文资料,挑出可以为我
篇二:万能批量文件格式修改器
新建一个文本文档 然后输入指令ren[空格]*.要修改文件格式[空格]*.要改成什么样的文件格式 注意空格是键盘上的空格
然后保存文档
把文档T.cSPengbo.CoM 蓬 勃范 文网:论文格式修改器)XT改为BAT
放在要改格式文件的文件夹内 双击
注意,要修改的时候把他们全部放在单独的一个文件夹内,否则会修改到其它文件名
篇三:手把手教你改论文的重复率
论文修改宝典
首先你要搞清楚一个概念。。。。
那就是修改到底哪些要改,哪些不需要~
不需要改的地方:
第一点、由于PT是采用通篇检测的原则,所以目录、声明、小标题和参考文献部分也会参与检测,这几部分如果有标红的地方可以直接跳过,不改,也可以在提交PT论文检测的时候将目录、声明、参考文献删除,不参与检测,还能
8
省钱。(这部分字数少,不检测的
话对重复率的影响就1%左右)
第二点、论文检测,本来就是个机器活,机器肯定不如人脑,会有一定的误判存在,这个是可以理解的。而PT的检测又是最严格,那么肯定会存在少量太严不沾边的误判,这些可以直接跳过,不修改。比如:“我是她儿子”和“她是我儿子”任何检测系统检测出来肯定都是百分百相似。机器是死的,人是活的,我们可以灵活修改。
第三点~当抄袭的内容是法规条文名人名言概念真理等固定的条款,这种情况就不需要修改了,改也改不出一个道道。
需要修改的地方:
PT检测报告中:句子不同颜色表示不同的相似度,红色表示相似度在百分之70以上,橙色表示相似度在百分之40-70,绿色表示合格的句子。所以在排除以上三种不需要改的情况之后,红色句子重点修改,橙色句子稍微修改。绿色句子中要是有您知道是抄袭的句子也需要修改。(任何系统的对比库都是有限的,虽然有几十亿上百亿的数据,但毕竟这世界资料那么多,而且很多是有版权的,肯定不可能全部都收录,存在部分检测不到是正常的)
修改方法总结:
只留下肯定改不了的部分如专业术语、数据等,其他的都用同义词替换,并改变描述方式(变原句为倒装句、被动句、
9
主动句),另外还可以把超长句拆分成几个短句。注意修改过程中可以适当增减字数,但是不能改变太多,比如原本一个句子四十个字被改成十个,或者八十个,甚至直接删除标红的句子,这样有可能会越改越重复,甚至还可能导致原本检测不重复的地方在下次检测中会变成重复的。(这是由于PT和知网检测系统都采用了模糊算法,如果整体结构和大纲被打乱(比如删除了A这个标红的句子),可能引起句子B前后检测标红不一致(第一次检测合格,第二次却被标红)简而言之,修改会引起“蝴蝶效应”,所以当您的文章相似度比较少的时候(比如低于30%),修改过程中不要对字数改变太大,而如果您的相似度很高,(比如高于40%)您就可以大刀阔斧的修改,甚至直接删除标红的句子,否则几乎每个句子都要重新修改又要考虑到字数的话就工作量太大了。具体修改案例见底部。
二、PT数据库有哪些
PaperTest的比对指纹数据库库由超过9000万的学术期刊和学位论文,以及一个超过10亿数量的互联网网页数据库组成。指纹库是指提取的文章关键性特征信息,并非全文。
现在大家写论文主要都是通过互联网来收集资料,为了更大程度顺应市场规则,PT采用优先互联网匹配原则,也就是说当我们匹配到了互联网的文章后,就不会再去匹配论文资源库了,这样就能为最多的买家提供最有效最准确的论文
10
修改指导。另外大家注意到两个问题:一是买家A第一次用PT检测是90%,修改数次之后用PT检测只有10%,那么可以很肯定的说知网也低于10%(因为PT比知网严格,几乎检测的相似度都比知网高,而如果)
为什么引用也会全部标红,先说一下知网对于引用库的检测原则吧,知网在检测专用术语中有两种库的概念,我们暂且用一种通俗易懂的语言来解释,一种是抄袭库,一种是引用库。断句的时候,当发现一句话,来自于抄袭库,他则算是抄袭,如果发现是引用库的时候,则算引用,所以无论你在文中的引用符号标得多么先进,他都以他的库为标准,所以建议不要过度引用。在PaperPass论文修改的过程中,你加了引用的地方可以暂且先pass掉,毕竟论文中是允许存在一定的引用的。
所有的修改完后,建议再次进行一次检测,检测完后,确定无问题了,无可以修改的地方了,可以采用知网做一次定稿检测。为了论文顺利通过,修修改改是必要的,别偷懒,顺利毕业比什么都重要。
修改方法案例分析
例如下句:
过热故障中的过热与变压器正常运行下的发热是有区别的,正常运行时的其发热源来自于绕组和铁芯,即铜损和铁损,而变压器过热故障是由于受到有效热应力而造成的绝缘
11
加速劣化,它具有中等水平的能量密度。
论文更改为:
几乎被标红,说明与相似文献存在重合和高度相似,经过以上方式结合,本句可改为: 过热故障中出现的过热容易与变压器正常运行下的发热相混淆,后者是因为其绕组和铁芯会出现铜损和铁损的现象,这是正常运行过程中的发热,而变压器过热故障是受到有效热应力造成的绝缘加速劣化,具有中等水平的能力密度。
这样修改几乎可以降低抄袭率一半。
例如下句:
上世纪九十年代以来,在生产力提高、科技进步、跨国公司活跃等因素的共同驱动下,经济全球化席卷全球,世界经济越来越成为一 个整体,跨国公司根据其战略部署在世界范围内对生产要素和资源进行优化配置和重新整合,这导致国际贸易和分工的方式悄然发生 了变化,由传统的产业间分工模式逐步演化为同一产品不同工序和区段上的分工体系,即产品内分工。
论文更改为:
从20世纪末以来,在新的科技革命及跨国公司迅速发展的带动下,全球经济日趋一体化,各国经济在世界范围内实现了竞争与协作相结合的良好共存局面。在全球范围内,各生产要素由于跨国公司的快速发展实现了优化配置和重新
12
整合,从而使国陈贸易和世界分工的方式产生了适应新时代要求的变化,传统的产业分工方式开始转变为因产品在工序和区段上的差异而进行的分工方式,这也就是我 们所说的产品之中的分工。
例如下句:
在透明水杯的清水中放入少量纤维进行搅动,便可以直观地发现纤维呈立体悬浮状乱向分散,且长时间放置都不会有太大变化,说明合成纤维的质量较好;质量差的纤维经搅动后可能分散,但时隔不久便会上浮为一絮状层。质量差的纤维在混凝土的实际配制过程中多不易均匀分散。
论文更改为:
(本段完全被标红,修改方式只有一种,就是打乱顺序,重新组织)
将少量纤维放入盛装清水的透明容器中,边搅动边观察纤维变化情况,如果合成纤维质量较好,那么就可以直观地看到纤维呈立体悬浮状分散,随着时间的推移,位置也不会发生明显的变化;若合成纤维质量较差,那么搅动的过程中,纤维可能分散,并且容易上浮形成絮状层。质量差的纤维在混凝土的实际配制过程中多不易均匀分散。
例如下句:
对施工单位或业主提出的设计变更要求要进行统筹考虑,确定其必要性,同时将设计变更对施工工期和费用的影响进
13
行全面分析,非改不可的要调整施工计划,以尽可能减少对工程的不利影响。
论文更改为:
施工单位或业主一旦提出设计变更要求,要进行统筹考虑,考察变更的必要性,同时,将设计变更对施工工期、费用等方面可能造成的影响进行全面而科学的分析,遇到非改不可的变更要调整施工计划,尽可能将其对工程的不利影响降到最小
“反反抄袭”密招一:改写
躲避“论文测谎仪”的方法听起来有些笨,但却很“实用”,那就是——改写。“不是论文不能抄,要看你会抄不会抄~”。
东拼西凑其实并没有过时,关键在于要仔细,不能露出马脚。首先在不同的资料当中找到我需要的东西,然后把每句话变变句式,换换说法,加一些解释性的扩充,略作增删,最后把这些部分组织到一起,论文就大功告成了。虽然繁琐一点,但是最后出炉的论文,绝对就像去韩国做了整容手术,焕然一新~再牛的测谎仪见到我这论文,估计也只有哀叹的份儿。
多加参考书目,把脚注一通乱加,那就是双重保险了~”有的时候,东拼西凑出一大段话,但是又不知道怎么改写更好,就干脆给这段话原封不动地加上一个引号,然后再给这段话编一个相应的脚注。首先,?引用?部分不算作抄袭,论
14
文测谎仪会自动剔除;其次,老师根本不可能有精力去检查我的每个脚注是否真实。这样一来,我的抄袭怎么可能被发现呢,
“反反抄袭”密招二:翻译
要抄,就不能留下任何痕迹。她的方法更加繁琐,但也更加保险,那就是翻译。跨语言的论文测谎系统还没有研发出来。广泛查阅外文资料,挑出可以为我所用的部分,按照一定框架合在一起,一篇拼凑的英文论文就诞生啦~再把它翻译成中文,毕业论文不就有着落了吗,说抄袭,测谎仪软件查得出来吗,
这种方法对英语水平有很高要求,不过,英语一般的同学也有自己的“门道”。有些同学付钱给学校里英语专业的研究生,请他们对自己的“双语论文”全程把关。“很多学校的墙上贴着这种小广告,英语专业的学生为人操刀论文,价格也不菲,少则几百元多则上千元。
“反反抄袭”密招三:取巧
改写也好,翻译也罢,都是力气活儿。几万字的论文,如果字字改写,句句翻译,恐怕论文没写完,已经是人比黄花瘦,华发上鬓头了。理工科学生是天下最幸福的人,因为“理工科的论文,变变数据图表啊,变变操作环节啊,就可以变成自己的东西了,反抄袭软件根本查不出来”。理工科的个人成果要好出一些,数据不一样,画图不一样,结果就不一
15
样。自己写个软件,下载一个源代码,然后根据需要加以修改,就能把代码变成自己的啦~最后用自己的框架搭建起来,毕业设计就完成了。
“反反抄袭”密招四:Google新用
如果说以上所有同学的“反反抄袭”密招都还在大家的理解范围之内的话,那么这种“反反抄袭”法,则让人瞠目结舌,以为自己遇到了火星人。
这种方法,命名为“Google法”。“所谓?Google法?,就是找一篇现成的论文,把论文的每一段都用Google在线翻译成英文,然后将翻译好的英文用Google在线翻译全部转回中文。猛地看上去,跟原文差不多;可是仔细一看,其实每句话都不一样~只要自己再把少量的语病改一改,就大功告成了。”
提交论文之前,上淘宝网,有很多卖家会提供论文检测服务~卖家也持有类似的论文检测软件,通过卖家可以查看自己的论文有哪些破绽,再把露出马脚的部分精心修改。这样一来,把毕业论文交上去,就不会有什么风险了。有很多同学都准备这样做,花钱买个放心呗~
16
范文二:cloth修改器
Cloth 修改器是 Cloth 系统的核心,应用于 Cloth 模拟组成部分的场景中的所有对象。该修改器用于定义布料对象和冲突对象、指定属性和执行模拟。其他控件包括创建约束、交互拖动布料和清除模拟组件。
左:尚未应用 Cloth 修改器
右:已应用 Cloth 修改器并进行模拟
请参见
?
?
?
?
基本概念
在 Cloth 模拟中,需要让 Cloth 知道哪些对象将成为模拟的一部分,而哪些对象不是模拟的一部分。在完成上述操作之后,要定义制作的对象。此外还可以指定布料材质,以及什么是固体冲突对象。
由于 Cloth 是修改器,因此其实例将指定给每个要包括在 Cloth 模拟中的对象。这其中包括所有布料对象和冲突对象。注意分别带有单独 Cloth 修改器应用程序的布料对象彼此将不会交互。我们可以采用多种方式将对象包括在模拟中:
?
? 一次性选择所有对象,然后对其应用 Cloth 修改器。 对一个或多个对象应用 Cloth,然后使用“添加对象”按钮(在“对象”卷展栏或在象属性”对话框)添加对象。 测量单位
重要信息只有当您在应用 Cloth 修改器后更改系统单位时,以下信息才是必要的。如果您在应用 Cloth 之前更改系统单位,则修改器会自动调整厘米/单位设置。
在进行衣服模拟时考虑尺寸大小非常重要。一面大幅的旗帜和手帕的行为不同。如果关闭了比例,那么模拟也将关闭。由于 Cloth 处理的是真实世界中的物理,所以它在真实世界单位中工作。这意味着 Cloth 需要了解 3ds Max 中的单位和现实世界中的单位之间的关系。 例如,假定创建的平面为 10X10 的 3ds Max 单位。如果希望此平面的行为和 10-英寸 x 10-英寸手帕的行为相似,可设置 Cloth 中的 1 个 3ds Max 单位=1 英寸。如果希望此平面的行为和 10-英尺 x 10-英尺床单相似,可设置 Cloth 中的 1 个 3ds Max 单位=1 英尺。
除了本节开始所描述的以外,Cloth 忽略 系统单位设置(“自定义”菜单下 >“单位设置”>“系统单位设置”)。Cloth 具有其自带的单位设置,该设置是由“模拟参数”卷展栏中的厘米/单位参数确定的。通过该参数 cloth 可以得知每个 3ds Max 单位等同于多少厘米 (cm)。由于 英寸等于 2.54 cm,默认设置 2.54 意味着一个 3ds Max 单位等同于 1 英寸。 通过以下步骤可以确定此处使用的设置。
1. 使用测量工具或卷尺辅助对象以 3ds Max 单位测量布料(或角色)的尺寸(称为数
字 x)。
2. 确定您希望该对象在现实世界中的大小,然后将该数字转化为以厘米为单位的数字。
如果您掌握的尺寸以英寸为单位,则只需乘以 2.54(称此数字为 y)。
3. 厘米/单位 = y/x
以下是一个快速示例:您将文件 man.obj 导入到 3ds Max,并希望为其穿上一件衬衫。 1.
2. 使用测量工具,发现该角色身高为 170 个 3ds Max 单位。因此 y=170。 确定该角色身高 6 英尺。
?
?
3. 6 英尺=72 英寸。 且 72 英寸=72x2.54=182.88cm。所以 x=182.88 现在的值即可确保衬衫行为的正确。Cm/unit=y/x=170/182.88=0.929。由于在
此并不需要很高的精度,您还可将微调器的值圆整为 1.0。
织物行为
Cloth 提供多种不同的方式来设置织物行为。您可以令布料的行为类似于皮革、丝绸、粗麻布和任意介于其间的材料。
模拟
在设定所有参数之后,我们已经准备就绪,可以开始模拟了。一般情况下,将先执行本地模拟来令织物和角色相匹配。在织物就位之后,可以多次模拟。
在 Cloth 中运行模拟非常轻松。您可以对模拟做出多种更改和编辑,将其作为一个不断完善的过程,而非一蹴而就的场景。
约束
您可采用多种方式约束织物来在模拟期间创建不同的织物效果。Cloth 可以约束布料具有额外的拖拽效果,就仿佛其在空气中飘荡,或者还可以令其受到场景中空间扭曲的影响。将一部分织物链接到动画对象或附加到曲面是其他常见约束。例如,创建裤子时要将裤子的顶部约束到角色的腰部;或者需要将窗帘约束到拉杆上。约束条件非常重要,同时也是 Cloth 的强大部分。Cloth 可以创建多组约束顶点,以获取最大的灵活性。此外还可以将衣服的众多不同组成部分约束到不同节点曲面或其他布料对象。
Cloth 中的约束可在修改器的创建。在此处,可以看到布料和冲突等所有选定对象的顶点。随后您可以选择这些对象并将其置于组中。在定义组之后,可将选择集附加或“约束”到另一对象,或令其受到外力的影响。
步骤
示例:要使用“保持形状”选项,请执行以下操作:
如果布料对象以您想在模拟过程中保留的 3D 图形开始,则可以使用“保持形状”选项和设置保留此图形或甚至反转它。此简单步骤提供如何使用“保持形状”的示例。
1. 在“顶”视口或“透视”视口中,添加基本体对象,该对象约为 90 x 90 单位并且为 20
段 x 20 段。
2. 应用弯曲修改器,将“角度”设置为 250.0,将“弯曲轴”设置为 X。
这将生成初始管状图形。
3. 复制弯曲平面两次,以便在一行中具有三个平面。重命名平面,如下所示:
?
?
? 未保持图形 保持形状 反转图形
4.
5. 选择所有三个平面并应用 Cloth 修改器。 在“模拟参数”卷展栏上,禁用“重力”并将厘米/单位设置为 0.5。
禁用“重力”使布料对象在模拟期间不会滑落,使它们处于视图中,并降低平面相对大的尺寸的厘米/单位设置补偿。
6. 在“对象”卷展栏上,单击“对象属性”。
这会打开“对象属性”对话框。
7. 在“模拟对象”列表中,高亮显示所有三个平面(通过拖动),然后在“Cloth 属性”组
中选择“Cloth”。同时,将“U 弯曲”设置为 500.0。
这也会将“V 弯曲”自动设置为 500.0。
通过使用高的弯曲值允许更快速地进行模拟。
下一步,分别为每个对象设置不同的“保持形状”属性。
8. 高亮显示列表中的反转图形对象并将“弯曲 %”值设置为 -100.0。
注意默认值是 100.0。
9.
10. 单击“确定”退出该对话框。 选择不保持形状对象,并确保禁用“对象”卷展栏 >“已选的对象操纵器”组 >“使用目
标状态”。
11.
12. 选择反转图形和保持形状对象,但不要选择不保持形状,然后启用“使用目标状态”。 在“对象”卷展栏,单击“模拟本地”。
几秒钟之后,不保持形状对象开始变得平缓,保持形状对象保持不变,而反转图形对象实际上反转了其图形,从而有效地创建了负的弯曲角度。 提示也可以使用带有“抓取状态”的“目标状态”进行维持,或使用前面的布料模拟或形状更改修改器反转创建的图形。
要使用联网的渲染处理场运行布料模拟,请执行以下操作:
复杂布料模拟不仅需要大量计算,而且要花费很长的时间。Cloth 包含使其易于在联网计算机上(渲染处理场的一部分)运行模拟的命令,从而可以释放计算机的空间,以用于场景的其他部分。
1.
2. 设置模拟。 对于模拟过程中的每个布料对象,都要选中该对象,然后在“选中的对象”卷展栏上,
单击“设置”,并指定缓存的路径和文件名。
为了获得最佳效果,应指定映射的驱动器,并启用“强制 UNC 路径”。从而可以使用通用命名约定指定该路径,以便网络中的所有计算机都可以找到它。此外,将所有缓存文件保留在相同的目录中也是一种不错的方法。
3.
4.
5. 在“模拟参数”卷展栏上,关闭“模拟启用渲染”。 保存此场景文件。 在“渲染设置”对话框中,启用“网络渲染”,然后单击“渲染”。将该作业提交到单个服
务器上。
与渲染不一样,网络 Cloth 模拟不能在多台服务器计算机之间拆分。 注意您无需渲染整个动画即可触发缓存的创建;单帧就足够了。
只要服务器计算机启动渲染,它就开始计算模拟并将结果保存到磁盘。通过单击“加载”按钮,您可以在任意位置从缓存文件加载最新状态的模拟,以检查其进度。
界面
Cloth 接口会因当前的修改器堆栈级别而有所不同:对象级别或以下四个子对象级别之一: ?
?
?
? 成组 接合口
“对象”卷展栏
在应用 Cloth 修改器之后,“对象”卷展栏是“命令”面板上可以看到的第一个卷展栏。其中包括了创建 Cloth 模拟和调整织物属性的大部分控件。
对象属性
用于打开“对象属性”对话框,在其中可定义要包含在模拟中的对象,确定这些对象是布料还是冲突对象,以及与其关联的参数。
Cloth 力
向模拟添加类似风之类的力(即场景中的空间扭曲)。单击“Cloth 力”以打开“力”对话框。要向模拟添加力,可在左侧的“场景中的力”列表中,突出显示要添加的力,然后单击 > 按钮,将其移动到“模拟中的力”列表中,从而将其添加到模拟中。此后,该力就将影响到模拟中的所有布料对象。
要从模拟移除力,可在右侧的“模拟中的力”列表中,突出显示要移除的力,然后单击
“模拟”组
要运行布料模拟,可单击此组的三个模拟按钮中的任意一个按钮。要中止模拟,可按下 Esc 键;或者如果“Cloth 模拟”对话框为打开(即进程打开),可单击“取消”按钮。
模拟本地
不创建动画,开始模拟进程。使用此模拟可将衣服覆盖在角色上,或将衣服的面板缝合在一起。
模拟本地(阻尼)
和“模拟本地”相同,但是为布料添加了大量的阻尼。将衣服缝合到一起时,如果面板以高速接合在一起将会出现问题。使用阻尼模拟可以减轻这一问题的影响。
模拟
在激活的时间段上创建模拟。与“模拟本地”不同,这种模拟会在每帧处以模拟缓存的形式创建模拟数据。
模拟器通过时间步长(称为 dT)前进。初始值为“模拟参数”卷展栏上的“步数”设置。当模拟器遇到某些的情形时,它会降低 dT 以克服障碍。稍后,模拟器会将 dT 再次增加到您设置的最大“步数”值。发生时,会在显示模拟过程的“Cloth 模拟”对话框中显示 dT 的当前值(请参见以下内容)。
当模拟器减小 dT 时,会在 Cloth 模拟对话框中显示“减小的 dT”和以下消息之一(每条消息后面跟随着解释):
?
?
?
?
进度
开启之后,将在模拟期间打开“Cloth 模拟”对话框。该对话框显示模拟进度,其中包括时间信息以及有关错误或时间步阶调整的消息。 无法解算等式 – 解算器不能解算运动等式。 布料被拉伸过长 – 在尝试解算一个步长时,布料的某些边缘拉伸得太长,说明解算失败。 布料对实体的冲突速度太快 – 布料相对于冲突对象的速度太快。 布料对布料的冲突速度太快 – 冲突布料部分的速度太快。
“Cloth 模拟”对话框在模拟运行时显示有关模拟的信息。
模拟帧
显示当前模拟的帧数。
消除模拟
删除当前的模拟。这将删除所有布料对象的高速缓存,并将“模拟帧”数设置回 1。 截断模拟
删除模拟在当前帧之后创建的动画。
例如,如果动画已经模拟到 50 帧,但是只希望保存从 0 到 30 帧的动画关键点,可将时间滑块设置到 30 帧,然后单击此按钮。即从 31 帧开始删除模拟。
已选对象的操纵组
设置初始状态
将所选布料对象高速缓存的第一帧更新到当前位置。
重设状态
将所选布料对象的状态重设为应用修改器堆栈中的 Cloth 之前的状态。单击此项后,将清除模拟;即“模拟帧”设置回 1。
删除对象高速缓存
删除所选的非布料对象的高速缓存。如果对象模拟为布料,并且通过“对象属性”对话框转换为冲突对象(或不活动),则其布料运动保留在其高速缓存中。
这对于在图层中模拟衣服非常实用。例如,假定模拟角色的裤子,然后将裤子转换为模拟上衣的冲突对象。通过在图层中模拟,可以避免布料对布料冲突检测的问题。如果要从所选对象移除高速缓存的运动,可单击此按钮。
抓取状态
从修改器堆栈顶部获取当前状态并更更新当前帧的缓存。
以下是其使用的示例:
1. 模拟到第 100 帧。播放模拟时,您会看到第 24 帧处有冲突对象穿透布料。
2. 在 Cloth 之后添加“编辑网格”修改器,然后拖动布料顶点,以便令该对象不穿
透衣服。
3. 转至堆栈底部的 Cloth,然后单击“抓取状态”。现在顶点已经移动了两次,其
中一次顶点位移由 Cloth 应用,第二次由“编辑网格”应用。
4. 移除“编辑网格”编辑器。现在顶点应该已经处于预期的位置。
抓取目标状态
用于指定保持形状的目标形状。从修改器堆栈顶部获取当前变形,并使用该网格来定义三角形之间的目标弯曲角度。同时启用使用目标状态。
注意只使用“目标状态”网格的弯曲角度,而不是边长。
提示要向布料添加一些自然的皱折,先将布料拖到地板上,单击“抓取目标状态”,然后运行模拟。单击“抓取目标状态”之后,运行模拟之前,请单击
“重设状态”(除非您希望布料一直放在地板上!)
重设目标状态
将默认弯曲角度重设为堆栈中 Cloth 下面的网格。
使用目标状态
启用此选项后,保留由抓取目标状态存储的网格形状。它使用 Cloth 的“对象属性”对话框保持形状组中的“弯曲
%”和“拉伸 %”设置。
如果选定具有不同“使用目标状态”设置的多个布料对象,则此复选框显示为不可用,但您可以单击它以便对所有选定对象进行设置。
注意在早期版本中,此复选框被标记为“保持形状”,并显示在布料的“对象属性”对话框中。
创建关键点
为所选布料对象创建关键点。该对象塌陷为可编辑的网格,任意变形存储为顶点动画。
添加对象
用于向模拟添加对象,为此无需打开“对象属性”对话框。单击“添加对象”,然后单击某个对象进行添加。要同时添加多个对象,请按 H 键,并使用“拾取对象”对话框。 显示当前状态
显示布料在上一模拟时间步阶结束时的当前状态。
如果取消模拟,上一时间步阶将停留在两帧之间。如果允许模拟成功完成,则上一时间步阶等同于最后一帧。
显示目标状态
显示布料的当前目标状态;即由“保持形状”选项使用的所需弯曲角度。
显示启用的实体冲突
启用时,高亮显示所有启用实体收集的顶点组。在查看确切哪些顶点将会涉及实体对象冲突时,该方法非常方便。
显示启用的自相冲突
启用时,高亮显示所有启用自收集的顶点组。在查看确切哪些顶点将会涉及布料对布料的冲突时,该方法非常方便。
“选定的对象”卷展栏
“选定的对象”卷展栏用于控制模拟缓存、使用纹理贴图或插补来控制并模拟布料属性(可选),以及指定弯曲贴图。此卷展栏只在模拟过程中选中单个对象时显示。
“缓存”组
这些设置用于网络模拟。启用模拟启用渲染进行渲染时,Cloth 可以在联网的计算机上运行模拟,从而使您的本地计算机可用于其他工作。有关步骤,请参阅要使用联网的渲染处理场运行布料模拟,请执行以下操作:。
[文本字段]
显示缓存文件的当前路径和文件名。您可以编辑该字段,但是路径必须存在;如有必要将创建该文件。
对于任何您没有为其指定文件名的布料对象,Cloth 将基于对象名称创建一个文件
名。
强制 UNC 路径
如果文本字段路径是指向映射的驱动器,则将该路径转换为 UNC 格式。从而使该路径易于访问网络上的任何计算机。要将当前模拟中所有布料对象的缓存路径都转换为 UNC 格式,请单击“全部”按钮。
覆盖现有文件
启用时,Cloth 可以覆盖现有缓存文件。要对当前模拟中的所有布料对象启用覆盖,请单击“全部”按钮。
集
用于指定所选对象缓存文件的路径和文件名。单击“设置”,导航到目录,输入文件名,然后单击“保存”。
加载
将指定的文件加载到所选对象的缓存中。
导入
打开一个文件对话框,以加载一个缓存文件,而不是指定的文件。
全部加载
加载模拟中每个布料对象的指定缓存文件。
保存
使用指定的文件名和路径保存当前缓存(如果有的话)。如果未指定文件,Cloth 会基于对象名称创建一个文件。
导出
打开一个文件对话框,以将缓存保存到一个文件,而不是指定的文件。可以采用默认 CFX 格式或 PointCache2 格式进行保存。
附加缓存
要以 PointCache2 格式创建第二个缓存,应启用“附加缓存”,然后单击“设置”以指定路径和文件名。在使用“模拟启用渲染”进行渲染时也会创建该文件。
“属性指定”组
插值
在“对象属性”对话框中的两个不同设置(由右上角的“属性 1”和“属性 2”单选按钮确定)之间插入。使用此滑块可以在这两个属性之间设置动画,调整衣服使用的织物设置类型。
纹理贴图
设置纹理贴图,对布料对象应用“属性 1”和“属性 2”设置。在此窗口中可以添加灰度纹理贴图,在“对象属性”对话框中设置的两个属性之间混合。黑色将代表属性 1,而白色将代表属性 2。任何灰度值都将在这两个属性之间混合。您可以将纹理贴图拖到此按钮之上。
布料对象的属性 1 为粗麻布材质,属性 2 为丝绸,其属性由方格程序贴图控制
贴图通道
用于指定纹理贴图所要使用的贴图通道,或选择要用于取而代之的顶点颜色。在与
3ds Max 中的新绘制工具结合使用时,顶点颜色特别有用。您可以直接在对象上绘制顶点颜色,并将绘制的区域用于材质分配。
“弯曲贴图”组
“弯曲贴图”选项用于使用纹理贴图、贴图通道或顶点颜色来调整目标弯曲角度。此项的价值在于您可以绘制布料的变形或使用一些种类的噪波贴图来添加布料的不规则性。
弯曲贴图
切换“弯曲贴图”选项的使用。
使用数值设置调整的强度。在大部分情况下,该值应该小于 1.0。范围为 0.0 至
100.0。默认值为 0.5.
[贴图类型]
选择“弯曲”贴图的贴图类型:
?
?
? 顶点颜色使用顶点颜色通道来进行调整。 贴图通道使用贴图通道,而不是顶点颜色来进行调整。使用微调器来设置通道。 纹理贴图使用纹理贴图来进行调整。要指定纹理贴图,应单击该按钮(默认情
况下标记为“无”),然后使用“材质/贴图浏览器”来选择该贴图。之后,贴图名
称显示在按钮上。
“模拟参数”卷展栏
“模拟参数”卷展栏设置用于指定重力、起始帧和缝合弹簧选项等常规模拟属性。这些设置在全局范围内应用于模拟,即应用于模拟中的所有对象。
厘米/单位
确定每 3ds Max 单位表示多少厘米。
Cloth 自动设置厘米/单位为每英寸等于 2.54 厘米(3ds Max 中的默认系统单
位)。例如,如果您设置系统单位为一英尺,则 Cloth 自动设置厘米/单位为 30.48 (12x2.54)。
进行布料模拟时,尺寸和比例都很重要,因为即使采用同样的织物,10 英尺的窗帘的行为和一英尺见方的手帕的行为也大为不同。
地球
单击此按钮,设置地球的重力值。
重力
启用之后,重力值(参阅后续内容)将影响到模拟中的布料对象。
[重力值])
以 cm/sec2 为单位的重力大小。负值表示向下的重力。正值(即无符号)表示作用于布料对象的重力令对象向上移动。默认值设置为与地球的重力加速度相同:-980.0 cm/sec2。
步长
模拟器可以采用的最大时间步阶大小。
此值以秒测量。该值必须小于一帧的长度(对于 30 fps 的动画小于 0.033333)。值为 0.02 通常是所要使用的最大值。降低此值将导致模拟器计算时间更长,但是
通常可以提供更好的效果。模拟器将在必要时自动降低其时间步阶,但此设置是其要尝试的最大值。此值与 Subsample 参数结合使用:实际最大值等于步长值 除以
Subsample 值。
子例
软件对固体对象位置每帧的采样次数。默认值为 1。
采用默认值时,Cloth 对模拟中的固体对象每帧采样一次。在物体快速移动或旋转时,增加此值将会有所帮助,但是此值设置越高,模拟速度就越慢。
开始帧
模拟开始处的帧。如果在执行模拟之后更改此值,则高速缓存将移动到此帧。默认值为 0。
结束帧
开启之后,确定模拟终止处的帧。默认值为100。
自相冲突
开启之后,检测布料对布料之间的冲突。将此设置关闭之后,将提高模拟器的速度,但是会允许布料对象相互交错。
该数字设置指定 Cloth 趋向于避免布料对象自相冲突的程度,但是这要以模拟时间为代价。范围为 0 至 10。默认值为 0。
这是最大限制。如果 Cloth 需要较少的计算来解决所有冲突,则它也会较小。在大多数情况下,值没有必要大于 1。
检查相交
(一项废弃的功能。该复选框不起作用。)
实体冲突
开启之后,模拟器将考虑布料对实体对象的冲突。此设置始终保留为开启。
使用缝合弹簧
开启之后,使用随 Garment Maker 创建的缝合弹簧将织物接合在一起。
此设置仅对已使用 Garment Maker 修改器后的对象有效。在将衣服接合到一起之后,关闭此选项。关闭之后,Cloth 将确认已经缝合在一起的顶点,并将令其始终保持同步一致。开启该选项之后,如果缝合弹簧不是足够牢固(实际上,在此情况下的顶点之间始终存在某些细微的间隙),这些顶点总是有机会分离。
显示缝合弹簧
用于切换缝合弹簧在视口中的可视表示。这些设置并不渲染。
模拟启用渲染
启用时,将在渲染时触发模拟。利用此项可以使用网络计算机生成模拟,从而使您能够使用自己的计算机处理场景的其他方面。请参阅此处的步骤。
渲染完成后,Cloth 将写入每个布料对象的缓存。您可以在“选定的对象”卷展栏(只有在选定单个对象时可用)上指定该缓存文件。如果未指定名称,则软件将创建一个名称。
该数值指示模拟的优先级;模拟将以升序运行。对于具有相同优先级的修改器,未定义顺序。 注意每个对象都拥有自己的缓存文件,这是在打开 MAX 文件时临时创建的。在保存文件时,缓存将并入 MAX 文件中。“模拟启用渲染”启用后,将创建并写入指定的缓存文件,但是在更改时间滑块时却不能读取。缓存文件必须先加载到内部缓存文件中,然后才能进行查看。
高级收缩
启用时,Cloth 对同一冲突对象两个部分之间收缩的布料进行测试。
该选项有助于布料与冲突对象的小部分特征冲突,如手指。对高分辨率冲突对象有显著的性能改进。
张力
利用顶点颜色可以显现织物中的压缩/张力。拉伸的布料以红色表示,压缩的布料以
蓝色表示,其他以绿色表示。您可以使用数值设置更改张力/压缩的范围,可通过在
红色和蓝色之间移动来完成此操作。值越大,着色越深。此操作仅限于 Garment
Maker 对象。
“组“组”子对象卷展栏用于选择成组顶点,并将其约束到曲面、冲突对象或其他布料对象。在“组”子对象层级,Cloth 模拟组成部分的所有选中对象显示时,其顶点均为可见,以便可以采用有效方式选中相应的顶点。
在此子对象层级创建或选择组之后,“编组参数”卷展栏即变为可用。
重要信息Cloth
组的概念既可适用于布料对象,也可以适用于模拟中的冲突对象。在创建组之后,即可给组赋予独特的属性。例如,冲突对象上的组可以具有相对于对象其余部分不同的冲突补偿值。这是使用组时可以应用的强大特性之一。
注意将鼠标置于视口之上,即可在可视环境下选择组;此外还可以使用“编组参数”卷展栏中的控件,通过指定软选择或使用纹理贴图来选择顶点。请参见“软选择”组。此外,可以在这个层级使用命名选择集工具。
设定组
利用选中顶点创建组。选择要包括在组中的顶点,然后单击此按钮。命名该组,然后相应的组将显示在以下列表中,以便您将其指定给对象。
删除组
删除在此列表中突出显示的组。
分离
解除指定给组的约束,将其状态设置回未指定(即没有约束)。指定给此组的任意独特属性仍然有效。
初始化
将顶点连接到另一对象(节点、模拟节点、曲面和 cloth 约束)的约束包含有关组
顶点的位置相对于其他对象的信息。此信息在创建约束时创建。要重新生成此信息,可单击此按钮。
可用于修改组中选定的顶点。要使用此选项,可执行以下操作步骤:
1. 在列表中选择该组。
2. 更改选择的顶点。
3. 单击“更改组”。
重命名
用于重命名突出显示的组。
节点
将突出显示的组约束到场景中对象或节点的变换。要使用此选项,可单击“节点”,然后选择要约束的节点。相应节点不能是模拟中的对象,出于此目的,使用模拟节点约束。
注意“节点”和“模拟”节点只是将组约束到对象的变换,而不是对象本身。它们无需彼此接近。如果布料和约束对象非常接近,如利用角色网格上的衣服,则改用“曲面”约束(如下所述)。
曲面
将所选的组附加到场景中冲突对象的曲面上。要使用此选项,可单击“曲面”,然后选择要附加的节点。
提示此约束最适用于布料和约束对象非常接近的情况,如利用角色网格上的衣服。 衣物
将布料顶点的选定组附加到另一布料对象。
保留
此组类型在修改器堆栈中的 Cloth 修改器下保留运动。例如,当前可能具有已经覆盖到骨骼的衣服。我们希望衣服的上半部分不受到 Cloth 模拟的影响 (即保持由蒙皮定义的变形),但是模拟其下半部分。此时,就需要保留上半部分顶点的约束。 拖动
此组类型将顶点锁定就位或向选定组添加阻尼力。“组参数”卷展栏 > 软关闭后,此约束用于将顶点锁定就位,以便这些顶点一点也不移动。当“软”选项打开之后,顶点上将应用拉力,拉力的大小由“组属性”卷展栏上的“强度”和“阻尼”值控制。
模拟节
除了该节点必须是 Cloth 模拟的组成部分之外,此选项和“节点”选项的功用相同。 组
将一个组附加到另一个组。仅推荐用于单顶点组。(即只包含一个顶点的组)。使用此选项,可以将一个布料顶点粘贴到另一个布料顶点。选择一个组,单击此按钮以打开“拾取组”对话框,然后选择另一组。
忽略在当前选择的组和另一组之间的冲突。在单击此按钮之后,系统将提示您选择另一组。使用此选项可以避免模拟器处理布料和身体在手臂下或两条腿间的冲突。
力场
用于将组链接到空间扭曲,并令空间扭曲影响顶点。
粘滞曲面
只有在组与某个曲面冲突之后,才会将其粘贴到该曲面上。必须为该约束启用实体收集才能使其生效。
粘滞布料
只有在组与某个曲面冲突之后,才会将其粘贴到该曲面上。必须为该约束启用自收集才能使其生效。
[组列表]
显示所有当前组。该列表下显示和突出显示的组关联的顶点数。要指定、复制、粘贴、删除或更改已创建的组,可先在列表中突出显示组的名称。
复制
将命名选择集复制到复制缓冲区。
粘贴
从复制缓冲区粘贴命名选择集。
“编组参数”卷展栏
在使用“创建组”在顶点选择上创建至少一个组之后,系统将会显示“编组参数”卷展栏。此后,在“组”卷展栏列表中突出显示组,以便在“编组参数”卷展栏中显示和编辑组的设置。
“约束参数”组
启用
启用之后,可使用此组框中的其余设置,为“组”卷展栏的组列表中的当前组指定约束。 软
将约束类型设置为软。软约束在顶点之间使用弹簧。关闭之后,约束为硬性。约束类型“节点”、“曲面”、“保留”、“拖动”和“模拟节点”既可为硬也可为软。Cloth、组和力场约束始终为软。
ID
使用材质 ID 将组附加到对象。此选项仅适用于“曲面”和 Cloth 约束。如果创建或初始化约束时,布料顶点不在三角形上,则该约束将创建到具有所需材质 ID 的最近三角形的中心。这意味着可能会将多个顶点约束到同一个三角形的中心。此时只应使用软选择。硬约束将所有布料顶点拉到该三角形的同一点上,这看起来会相当奇怪。 偏移
约束组以及其约束对象或目标与对象之间的距离变化。启用 时,默认值为 1.0。这样可以设置约束的组,以保持其与目标对象的原始距离。设置为 0.0 后,该约束力求将与目标对象的距离设置为零。
强度
在约束为软时指定弹簧的强度。
阻尼
在约束为软时指定弹簧的阻尼。
相对
将偏移指定为原始值的比率。只用于曲面和 Cloth 约束类型。例如,如果要将受约束的顶点移动其原始距离的一半,可启用“Rel.”复选框,然后将“偏移”设置为 0.5。 Vc
设置顶点颜色以确定约束的强度。
1 对 -1
在 Garment Maker 中更改了网格密度之后,重新指定组选择。“1 对 1”选项选择与原始顶点最靠近的顶点。
水滴
在 Garment Maker 中更改了网格密度之后,重新指定组选择。“水滴”选项选择初始顶点和在其特定半径之内创建的顶点。该半径可以留为默认或自动,也可以手动设置。
半径
开启之后,可用于设置“水滴”选项使用的半径距离(参阅此前说明)。关闭之后,“水滴”使用自动半径值。
“行为设置”组
行为设置
切换该组中其他设置的可用性。关闭时,其他设置无效。
实体收集
开启之后,将在实体冲突检测使用组顶点。
自收集
开启之后,将在自冲突检测使用组顶点。
层
指示可能会相互接触的布片的正确“顺序”。范围为 -100 至 100。默认值为 1。
如果衣服和/或衣片一开始都正确定向,则布料对布料冲突检测应该保持对象互相穿
插。然而,衣服/衣片的初始状态可能拥有一些无法解析的穿插。例如,假设您使用 Garment Maker 制作了一件夹克,假设右前片位于左前片的顶部。将衣服缝合在
一起后(通常关闭自相冲突),前片将穿插,以便确保右片位于左片的外部,您可能必须使用约束或“动态拖动”。在此使用面板上“层”选项会有所帮助。
以下是关于层的逻辑处理方式:当布料的两片(A 和 b)处于冲突检测范围时,将
比较它们的层(layera 和 layerb),并应用以下规则:
?
? 如果 layerA 或 LayerB 是 0,则 Cloth 使用常规的布料对布料冲突方法。 如果 layerA=layerB,则 Cloth 使用常规的布料对布料冲突方法。
? 如果 abs(layerA) > abs(layerB),则片 A 将推进到片 B 的相应一侧,具
体是哪一侧呢?如果 layerB > 0,则推进到由面法线指示的那一侧。如果
layerB
层值的符号指出布片“向外”的位置。正号表示“法线面向外的一侧”。
Keep Shape
启用后,根据“弯曲 %”和“拉伸 %”设置保留网格的形状(请参见以下内容)。在正常操作下,当 Cloth 创建模拟之后,将尝试令布料变平。
弯曲 %
将目标弯曲角度调整介于 0.0 和目标状态所定义的角度之间的值。负数值用于反转角度。范围为 -100.0 至 100.0;默认为 100.0。
拉抻 %
将目标拉伸角度调整介于 0.0 和目标状态所定义的角度之间的值。负数值用于反转角度。范围为 -100.0 至 100.0;默认为 100.0。
“预设”组
将 Cloth 属性参数设置为下拉列表中选择的预设值。此处将显示系统内置或已经加载的全部预设值。
加载
从硬盘驱动器加载预设值。单击此按钮,然后导航至预设值所在目录,然后将其加载到 Cloth 属性中。
保存
将 Cloth 属性参数保存到文件,以便日后加载。
使用这些属性
从以下卷展栏的设置中确定布料属性。
取自对象
将组的布料属性设置为与选择属性所在对象相同的属性。
U 弯曲/V 弯曲
弯曲阻力。此值设置的越高,织物能弯曲的程序就越小。棉织物可能比皮革易于弯曲,因此采用 15.0 的 U 和 V 弯曲值可能适合于棉,50.0 比较适合于皮革。
默认情况下,“U 弯曲”和“V 弯曲”参数锁定在一起,以便更改其中之一即可将另一
个参数设置为相同的值。只有在各向异性关闭时才可以将这两个参数设为不同的值。只对于 Garment Maker 对象才建议这样做。
左:U 和 V 弯曲=50,模拟麻材质
右:U 和 V 弯曲=2.5,模拟丝或其他轻质织物
U B 曲线/V B 曲线
织物折叠时的弯曲阻力。默认值为 0,弯曲阻力设置为常数。设置为 1 将令织物在角度介于三角形和接近 180 度之间时,具有很高的弯曲阻力。此时两个相邻的三角形无法相互交叉,因此增加此值可避免这一现象的发生。
默认情况下,“U 弯曲曲线”和“V 弯曲曲线”参数锁定在一起,以便更改其中之一即
可将另一个参数设置为相同的值。只有在各向异性关闭时才可以将这两个参数设为不同的值。只对于 Garment Maker 对象才建议这样做。
U 拉伸/V 拉伸
拉伸阻力。对于大多数衣料来说,默认值 50.0 是一个比较合理的值。值越大布料
越坚硬,较小的值令布料的拉伸阻力更象橡胶。
默认情况下,“U 拉伸”和“V 拉伸”参数锁定在一起,以便更改其中之一即可将另一
个参数设置为相同的值。只有在各向异性关闭时才可以将这两个参数设为不同的值。只对于 Garment Maker 对象才建议这样做。
U 压缩/V 压缩
压缩阻力。尽管这些值默认为 50.0,但是却与它们相对的拉神值很相似,指定比拉神值低的值可获得很好的效果,因为沿着布料纤维的长度对其进行压缩,它将弯曲而不是收缩。
默认情况下,“U 压缩”和“V 压缩”参数锁定在一起,以便更改其中之一即可将另一
个参数设置为相同的值。只有在各向异性关闭时才可以将这两个参数设为不同的值。只对于 Garment Maker 对象才建议这样做。
Shear
剪切阻力。值越高布料就越硬。剪切力定义单个三角形的变形能力。如果要将三角形的边置于窄线之内,此值将表示该线延展的长度。值较高时,此长度将只是其余所有侧边长度的总和。较低的值将允许此长度大于其余所有侧边。延展边的长度不是基于一对一的关系。多边形的一边可以比另一边延展更多,只要不超出总的切变值即可。 密度
每单位面积的布料重量(以 gm/cm2 表示)。值越高表示布料就越重,例如劳动服布料的值就较高。对于丝类的材质可使用较小的值。
厚度
定义织物的虚拟厚度,便于检测布料对布料冲突。如果禁用了布料对布料的冲突,则此值无关。值较大令布料间隔较远的距离。在此字段务必谨慎,不要使用太大或太小的值。值过大将干涉布料的自然行为。值过小将导致模拟器计算时间过长。此距离采用厘米 (cm) 测量,且应该小于构成布对象的三角形尺寸。设置为 0.0 将令 Cloth 自动指定合理的厚度值。
左:布的定片厚度为 0
右:厚度为 9
排斥
用于排斥其他布对象的力值。如果禁用了布料对布料的冲突,则此值无关。模拟器将按照此值成比例应用排斥力,令该布料避免和其他布料对象接触。如果在布料的不同组成部分之间有众多冲突,或者布料要互相贯通,则需增大此值。
阻尼
值越大,织物反应就越迟钝。采用较低的值,织物行为的弹性将更高。阻尼较高的布料停止反应的时间要比阻尼较低的布料快。高阻尼导致布料的行为象在油液中移动一样。过高的阻尼将导致模拟不稳定。默认值 0.01 是最佳选择。
空气阻力
受到的空气阻力。此值将确定空气对布料的影响有多大。较大的空气阻力值适用于致密的织物,较小的值适用于宽松的衣服。
动摩擦
布料和实体对象之间的动摩擦。较大的值将增加更多的摩擦力,导致织物在物体表面上滑动较少。较小的值将令织物在物体上易于滑动,类似于丝织物将会产生的反应。 静摩擦
布料和实体对象之间的静摩擦。当布料处于静止位置时,此值将控制其在某处的静止或滑动能力。
自摩擦
布料自身之间的摩擦。自摩擦与动摩擦和静摩擦类似,但自摩擦仅适用于布料自身之间或自冲突。值较大将导致布料本身之间的摩擦力更大。
U 比例
控制布料沿 U 方向延展或收缩的多少(该方向由 Garment Maker 定义)。对于
非 Garment Maker 网格,此设置对布料沿两个轴应用相同的比例,并且忽略 V 比例参数)。值小于 1 将令织物在模拟时收缩,值大于 1 将令织物延展。
V 比例
控制布料沿 v 方向延展或收缩的多少(该方向由 Garment Maker 定义)。值小
于 1 将令织物在模拟时收缩,值大于 1 将令织物延展。
接合力
当前不使用,只保留用于向后兼容此前产品的较早版本,该产品名为 Stitch。这是
一个全局接合力,但是当前的接合力是在接合口子对象模式上以接合口对接合口基础定义的。
深度
冲突深度。如果部分布料在冲突对象中达到此深度,模拟将不再尝试将布料推出网格。此值按 3ds Max 单位测量。
偏移
在布料和冲突对象之间保持的距离。非常低的值将导致冲突网格从布料下突出来。非常高的值将令织物看起来象是漂浮在冲突对象的顶部。
可塑性
布料保持其当前变形(即弯曲角度)的倾向。
这与保持形状有所不同,其确定布料倾向于保持其原始变形(或“目标状态”定义的变形)的程度。如果将“可塑性”设置为 100.0,则布料不会尝试更改三角形之间的角
度。如果希望获得较硬的布料,但是不希望布料膨胀,则增加“可塑性”值。
粘着
布料对象粘附到冲突对象的范围。范围为 0.0 至 99999.0。默认值为 0.0。
可以使用此参数模拟效果(如湿布料)。设置为 1.0 应该足以根据默认材质自己的权重将其保留在曲面上。
基于
显示组属性所基于的预设值。在修改参数和保存预设值时,Cloth 将使用上次作为“基于”名称所加载的预设值名称。
各向异性
启用后,可以为“弯曲”、“b 曲线”和“拉伸”参数设置不同的 U 值和 V 值。U 方向
和 V 方向由 Garment Maker 定义,并且不应用于非 Garment Maker 网格,
对于这些网格,设置不同的 U/V 值可能会导致意外的行为。
使用边弹簧
这是用于计算拉伸的备用方法。启用此选项之后,拉伸力将以沿三角形边的弹簧为基础。(因此,一般拉伸力和剪切力将采用更加复杂的方式计算,以便更加精确地反应基础物理属性)。
使用布料深度/偏移
使用为该组设置的深度和偏移值。启用后,布料对象将忽略冲突对象的“深度”和“偏
移”值。
“软选择”组
“软选择”控件在组的基础上应用,用以允许顶点的软选择靠近显式选择的组成员。这与 3ds Max 其他组件中的顶点软选择操作是一样的。有关详细信息,请参见软选择卷展栏。此外还可以基于纹理贴图来选择用于组的顶点。
使用纹理贴图
启用之后,Cloth 使用纹理贴图指定属于当前组的顶点软选择。单击该按钮(默认为 None)以选择纹理贴图。使用“贴图通道”控件选择贴图通道或顶点颜色通道。
在此窗口中可以添加灰度纹理贴图,在组中混合未选择和完全选择的像素。黑色表示未选择,白色表示完全选择。任意灰度值混合两者。您可以将纹理贴图拖到此按钮之上。 注意对于要应用于组的纹理贴图,必须至少显式选择一个顶点。但是,在启用“使用纹理贴图”之后,组的显式顶点选择不起作用。
“面板”卷展栏
在“面板”子对象层级上,您可以随时选择一个面板(布料部分),并更改其布料属性。面板必须由 Garment Maker 修改器创建,应为没有由另一样条线包含的闭合样条线。如果闭合的样条线由另一样条线包含,将在外部的样条线中形成孔洞。
“预设”组
预设
将选定面板的属性参数设置为下拉列表中选择的预设值。系统内置的任意预设值或此前保存并加载的设置值均在此显示。预设的文件扩展名为 .sti。
加载
从硬盘加载预设值。单击此按钮,然后导航至预设值所在目录,然后将其加载到 Cloth 属性中。
保存
将 Cloth 属性参数保存为文件,以便此后加载。默认情况下,Cloth 预设文件将保存到程序安装目录 \cloth 文件夹中。
“属性”组
U 弯曲/V 弯曲
弯曲阻力。此值设置的越高,织物能弯曲的程序就越小。棉织物可能比皮革易于弯曲,因此采用 15.0 的 U 和 V 弯曲值可能适合于棉,50.0 比较适合于皮革。
默认情况下,“U 弯曲”和“V 弯曲”参数锁定在一起,以便更改其中之一即可将另一个参数设置为相同的值。只有在各向异性关闭时才可以将这两个参数设为不同的值。只对于 Garment Maker 对象才建议这样做。
左:U 和 V 弯曲=50,模拟麻材质
右:U 和 V 弯曲=2.5,模拟丝或其他轻质织物
U B 曲线/V B 曲线
织物折叠时的弯曲阻力。默认值为 0,弯曲阻力设置为常数。设置为 1 将令织物在角度介于三角形和接近 180 度之间时,具有很高的弯曲阻力。此时两个相邻的三角形无法相互交叉,因此增加此值可避免这一现象的发生。
默认情况下,“U 弯曲曲线”和“V 弯曲曲线”参数锁定在一起,以便更改其中之一即可将另一个参数设置为相同的值。只有在各向异性关闭时才可以将这两个参数设为不同的值。只对于 Garment Maker 对象才建议这样做。
U 拉伸/V 拉伸
拉伸阻力。对于大多数衣料来说,默认值 50.0 是一个比较合理的值。值越大布料越坚硬,较小的值令布料的拉伸阻力更象橡胶。
默认情况下,“U 拉伸”和“V 拉伸”参数锁定在一起,以便更改其中之一即可将另一个参数设置为相同的值。只有在各向异性关闭时才可以将这两个参数设为不同的值。只对于 对象才建议这样做。
U 压缩/V 压缩
压缩阻力。尽管这些值默认为 50.0,但是却与它们相对的拉神值很相似,指定比拉神值低的值可获得很好的效果,因为沿着布料纤维的长度对其进行压缩,它将弯曲而不是收缩。
默认情况下,“U 压缩”和“V 压缩”参数锁定在一起,以便更改其中之一即可将另一个参数设置为相同的值。只有在各向异性关闭时才可以将这两个参数设为不同的值。只对于 Garment Maker 对象才建议这样做。
Shear
剪切阻力。值越高布料就越硬。剪切力定义单个三角形的变形能力。如果要将三角形的边置于窄线之内,此值将表示该线延展的长度。值较高时,此长度将只是其余所有侧边长度的总和。较低的值将允许此长度大于其余所有侧边。延展边的长度不是基于一对一的关系。多边形的一边可以比另一边延展更多,只要不超出总的切变值即可。 密度
每单位面积的布料重量(以 gm/cm2 表示)。值越高表示布料就越重,例如劳动服布料的值就较高。对于丝类的材质可使用较小的值。
厚度
定义织物的虚拟厚度,便于检测布料对布料冲突。如果禁用了布料对布料的冲突,则此值无关。值较大令布料间隔较远的距离。在此字段务必谨慎,不要使用太大或太小的值。值过大将干涉布料的自然行为。值过小将导致模拟器计算时间过长。此距离采用厘米 (cm) 测量,且应该小于构成布对象的三角形尺寸。设置为 0.0 将令 Cloth 自动指定合理的厚度值。
左:布的定片厚度为 0
右:厚度为 9
排斥
用于排斥其他布对象的力值。如果禁用了布料对布料的冲突,则此值无关。模拟器将
按照此值成比例应用排斥力,令该布料避免和其他布料对象接触。如果在布料的不同
组成部分之间有众多冲突,或者布料要互相贯通,则需增大此值。
阻尼
值越大,织物反应就越迟钝。采用较低的值,织物行为的弹性将更高。阻尼较高的布
料停止反应的时间要比阻尼较低的布料快。高阻尼导致布料的行为象在油液中移动一
样。过高的阻尼将导致模拟不稳定。0.01 是一个比较合适的值(注:默认值为 0.1,但实际上这个值过高)。
空气阻力
受到的空气阻力。此值将确定空气对布料的影响有多大。较大的空气阻力值适用于致
密的织物,较小的值适用于宽松的衣服。
动摩擦
布料和实体对象之间的动摩擦。较大的值将增加更多的摩擦力,导致织物在物体表面
上滑动较少。较小的值将令织物在物体上易于滑动,类似于丝织物将会产生的反应。 静摩擦
布料和实体对象之间的静摩擦。当布料处于静止位置时,此值将控制其在某处的静止
或滑动能力。
自摩擦
布料自身之间的摩擦。自摩擦与动摩擦和静摩擦类似,但自摩擦仅适用于布料自身之
间或自冲突。值较大将导致布料本身之间的摩擦力更大。
U 比例
控制布料沿 U 方向延展或收缩的多少(该方向由 Garment Maker 定义)。对于
非 Garment Maker 网格,此设置对布料沿两个轴应用相同的比例,并且忽略 V 比
例参数)。值小于 1 将令织物在模拟时收缩,值大于 1 将令织物延展。
V 比例
控制布料沿 v 方向延展或收缩的多少(该方向由 Garment Maker 定义)。值小
于 1 将令织物在模拟时收缩,值大于 1 将令织物延展。
接合力
当前不使用,只保留用于向后兼容此前产品的较早版本,该产品名为 Stitch。这是
一个全局接合力,但是当前的接合力是在接合口子对象层级上的接合口对接合口基础
上定义的。
可塑性
布料保持其当前变形(即弯曲角度)的倾向。
这与保持形状有所不同,其确定布料倾向于保持其原始变形(或“目标状态”定义的变
形)的程度。如果将“可塑性”设置为 100.0,则布料不会尝试更改三角形之间的角
度。如果希望获得较硬的布料,但是不希望布料膨胀,则增加“可塑性”值。
深度
冲突深度。如果部分布料在冲突对象中达到此深度,模拟将不再尝试将布料推出网格。此值按 3ds Max 单位测量。
偏移
在布料和冲突对象之间保持的距离。非常低的值将导致冲突网格从布料下突出来。非
常高的值将令织物看起来象是漂浮在冲突对象的顶部。
使用布料深度/偏移
使用为该面板(参见前面)设置的“深度”和“偏移”值。启用后,布料对象将忽略冲突
对象的“深度”和“偏移”值。
粘着
布料对象粘附到冲突对象的范围。范围为 0.0 至 99999.0。默认值为 0.0。
可以使用此参数模拟效果(如湿布料)。设置为 1.0 应该足以根据默认材质自己的
权重将其保留在曲面上。
基于
列出面板属性所基于的预设值。在修改参数和保存预设值时,Cloth 将使用上次作为
“基于”名称所加载的预设值名称。
各向异性
启用后,可以为“弯曲”、“b 曲线”和“拉伸”参数设置不同的 U 值和 V 值。U 方向
和 V 方向由 Garment Maker 定义,并且不应用于非 Garment Maker 网格,
对于这些网格,设置不同的 U/V 值可能会导致意外的行为。
使用边弹簧
这是用于计算拉伸的备用方法。启用此选项之后,拉伸力将以沿三角形边的弹簧为基
础。(因此,一般拉伸力和剪切力将采用更加复杂的方式计算,以便更加精确地反应
基础物理属性)。
使用实体摩擦
使用冲突物理的摩擦力来确定摩擦力。可以为布料或冲突对象指定冲突值。这将便于
您为每个冲突对象设置不同的摩擦力值
“保持形状”组
Keep Shape
启用后,根据“弯曲 %”和“拉伸 %”设置保留网格的形状(请参见以下内容)。在正
常操作下,当 Cloth 创建模拟之后,将尝试令布料变平。
弯曲 %
将目标弯曲角度调整介于 0.0 和目标状态所定义的角度之间的值。负数值用于反转
角度。范围为 -100.0 至 100.0;默认为 100.0。
拉抻 %
将目标拉伸角度调整介于 0.0 和目标状态所定义的角度之间的值。负数值用于反转
角度。范围为 -100.0 至 100.0;默认为 100.0。
“层”组
层
设置选定面板的层。请参见上面的“行为设置”。
“接合口”卷展栏
“接合口”子对象卷展栏用于定义接合口属性。
启用
启用或关闭接合口,将其激活或取消激活。
折缝角度
在接合口上创建折缝。角度值将确定介于两个面板之间的折缝角度。
或负值,具体取决于折缝的方式)
左:高折缝角度
右:低折缝角度
折缝强度 (该值可为正值
增减接合口的强度。此值将影响接合口相对于布料对象其余部分的抗弯强度。值为
2.0 表示布料具有双倍的抗弯强度(通过对象/面板/顶点组属性定义)。
缝合刚度
模拟时面板拉合在一起的力的大小。值较大将面板拉合在一起更结实和更快。
启用全部
将所选衣服上的所有接合口设置为激活。
禁用全部
将所选衣服上的所有接合口设置为关闭。此按钮令所有接合口上的“启用”复选框变为
不可选。
“面”卷展栏
“面”子对象卷展栏启用布料对象的交互拖放,就像这些对象在本地模拟一样。此子对象层级用于以交互性更好的方式在场景中定位布料。
注意如果错误地定位布料,则可以通过返回到“对象”层级并单击“重设状态”按钮恢复原始位置。
模拟本地
开始布料的本地模拟。为了和布料能够实时交互反馈,必须启用此按钮。
实时拖动!
激活该按钮后,可以在进行本地模拟时拖动选定的面。
实时旋转!
激活该按钮后,可以在进行本地模拟时旋转选定的面。
随鼠标下移模拟
只在鼠标左键点击时运行本地模拟。使用此模式,可以只通过释放鼠标按钮来启停本
地模拟。这样将便于更加轻松地在场景中定位和旋转布料的面。
忽略背面
启用时,可以只选择您面对的那些面。禁用时(默认设置),可以选择鼠标光标下的
所有面,而无需考虑可见性或朝向。
范文三:3Dmax修改器
Chapter01 Chapter02 Chapter03 Chapter04
第
一 部 分 基 础 实 例 132
5.1
初识修改器——
修改器堆栈简介和使用
在 3ds max 8中, 无论是建模型还是制作动画, 都经常需要利用修改器对模型进行修改。 3ds max 8在默认 的情况下不显示修改器的命令按钮,而是用修改器选择列表来代替,这样便有效地节省了工作界面的空间。
每使用一次修改器, 在堆栈栏中都会出现如图 5-1所示的记录, 这个功能就像 Photoshop 中的 “历史记录” 功能,两者功能非常相似。在每一个修改器的前面都有一个“小灯泡”,当它处于发光状态时,此修改器对物 体的修改便会在视图中显示;若处于关闭状态,它对物体的修改则不会在视图中显示。
图 5-1 堆栈栏中的修改器记录
3ds max 8允许随时访问堆栈栏内的任意一个堆栈项目,并修改它的各项参数。此外,也可以上下拖动改 变项目在堆栈栏中的位置, 但这会影响到最终修改的结果。 在堆栈栏的最下方通常是模型的最原始的选项, 它 的位置一般不能变更。
5.2
神奇的修改器——
8大参数类变形修改器
5.2.1 “弯曲”修改器
此修改器用来对物体进行弯曲处理, 用户可以调节弯曲的角度和方向, 以及弯曲所依据的坐标轴向, 还可 以将弯曲修改限制在一定的区域之内。
在修改器下拉列表框中选择“弯曲修改器”,在展卷栏中便会出现如图 5-2所示的参数卷展栏。
下面对如图 5-2所示的参数卷展栏做一简单介绍。
(1)“弯曲”:此区域用来控制设置对物体的弯曲“角度”大小以及 “方向”。
(2) “弯曲轴”:在它的下面个选项,用来控制物体弯曲的坐标轴向。
(3)“限制”:勾选它的“限制”效果复选框, 3设置其参数便可以 控制变形效果的影响范围。具体用法如下。 图 5-2 “弯曲”修改器参数卷展栏
从零开始 完全征服
133
①“上限 ” :设置弯曲的上限,在此限度以上的区域将不会受到弯曲影响。
②“下限 ” :设置弯曲的下限,在此限度与上限之间的区域将都受到弯曲影响。 下面结合实例对弯曲修改器做一简单介绍。
使用“弯曲”修改
器制作弯曲字体 如图 5-3所示。在前视图中创建一个倒角字体,然后在卷展栏中设置弯曲角度为 130°,弯曲轴为 X 轴, 便会得到如图 5-4所示的结果。
图
5-3 操作的字体
图 5-4 操作后的弯曲字体
在前面参数设置的基础上,勾选“限制 ” 区域的“限制效果 ” 复选框,设置其弯曲上限为 50,下限为 0,便 得到如图 5-5所示的结果。
在使用此功能时,一定要注意选择好视图以及与想要的弯曲结果相对应的对称轴,否则将不能得到想要的结 果。另外,被弯曲的物体应该有一定的段数,如图 5-3所示。如果长方体的段数为 1,即使对它施加了弯曲修改 器, 在视图中仍不会看到弯曲效果。 如果段数太小的话, 其弯曲部位的过渡将不光滑, 出现如图 5-6所示的结果。
图 5-5 设置“限制 ” 后的弯曲结果
图 5-6 段数太少的弯曲结果
5.2.2 “锥化”修改器
此修改器通过缩放物体的两端而产生锥形轮廓来修改造型, 同时还可以加入光滑的曲线轮廓。 允许用户控 制锥化的倾斜度、 曲线轮廓的曲度, 还可以限制局部的锥化效果。 在修改器下拉列表框中选择 “锥化” 修改器,
Chapter01 Chapter02 Chapter03 Chapter04
第
一 部 分 基 础 实 例
134 在展卷栏中便会出现如图 5-7
所示的“参数”卷展栏。
下面对如图 5-7所示的参数卷展栏做一简单介绍。
(1)“锥化”:此区域有两项参数。“数量”用来控制对物体锥化的倾斜程度,“曲线”用来控制曲线 轮廓的曲度。
(2)“锥化轴”:用来控制物体锥化影响的坐标轴向。
(3)“限制”:勾选它的“限制效果 ” 复选框,设置其参数便可以控制变形效果的影响范围。具体用法 如下。
①“上限 ” :设置锥化的上限,在此限度以上的区域将不会受到锥化影响。
②“下限 ” :设置锥化的下限,在此限度与上限之间的区域将都受到锥化影响。
使用“锥化”修改器 制作玫瑰花导边效果 下面结合实例对“锥化”修改器做一简单介绍。
如图 5-8所示,将一朵玫瑰花复制 3朵,并把它们成组,然后对它施加“锥化”修改器,设置如 5-7所示 的参数面板,便会得到如图 5-9所示的结果。
图 5-7 “锥化”修改器参数卷展栏
图 5-8 复制玫瑰
图 5-9 锥化结果
5.2.3 “扭曲”修改器
此修改器可沿指定的轴向扭曲物体表面的顶点, 产生扭曲的表面效果。 和前面的修改器一样, 它也允许用 户限制物体的局部受到扭曲作用。 在修改器下拉列表框中选择 “扭曲” 修改器, 在展卷栏中便会出现如图 5-10
从零开始 完全征服
135
所示的参数卷展栏。
下面对如图 5-10所示的参数卷展栏做一简单介绍。
图 5-10 “扭曲”修改器参数卷展栏
(1)“扭曲”:此区域有两项参数。“角度”用来控制对物体扭曲的角度,“偏移 ” 设置扭曲效果向上或 向下的偏向度。
(2)“扭曲轴”:用来控制物体扭曲的坐标轴向。 (3
) “限制 ” :它的具体用法与前面两个修改器的用法没有本质上的区别, 请读者参看上面的介绍,这里就不再重复。 下面结合实例对“扭曲”修改器做一简单介绍。 如图 5-11所示。在视图中用 放样 的方法创建一个截面形状为星形的柱体, 在展卷栏中设置参数面板如图 5-10所示,便会得到如图 5-12所示的结果。
放样:
第 3章 /3.3.5 放样工具
图 5-11 原始柱体
图 5-12 扭曲结果
利用此命令,在制作建筑模型柱子的时候,可以做出好多漂亮的效果。
5.2.5 “拉伸”修改器
此修改器可沿指定轴向拉伸或挤压物体,在保持体积不变的前提下改变物体的形态。特别是在动画片中, 具有弹性表现力的人物或角色都是通过该修改器来完成制作的。同样,在修改器下拉列表框中选择“拉伸”修
Chapter01 Chapter02 Chapter03 Chapter04
第 一 部 分 基 础 实 例
136
改器,在展卷栏中便会出现如图 5-13所示的参数卷展栏。
图 5-13
“拉伸”修改器参数卷展栏
下面对如图 5-13所示的参数卷展栏做一简单介绍。
(1)“拉伸”:此区域有两项参数,分别如下。
①“拉伸”:用来控制对物体拉伸的力度,它的值越大,物体被拉伸的程度就越大。
②“扩大 ” :设置拉伸轴向上物体的扩大程度。
(2)“拉伸轴”:用来控制物体拉伸的坐标轴向。
(
3) “限制 ” :它的具体用法与前面几个修改器的用法没有本质上的区别,请读者参看上面的介绍,这里 就不再重复。
使用 “拉伸” 修改器
制作柱体拉伸效果
下面对如图 5-11所示的柱体施加一个拉伸修改器,设置各项参数值,分别选择拉伸轴向为 Z 和 Y ,得到 如图 5-14及图 5-15所示的效果。
图 5-14 z 轴拉伸结果 图 5-15 y 轴拉伸结果
5.2.5 “挤压”修改器
此修改器用于将一个挤压影响加入到物体的堆栈修改中,它的实质是将物体上的顶点向自己的轴心点移动。 同样,在修改器下拉列表框中选择“挤压”修改器,在展卷栏中便会出现如图 5-16所示的“参数”卷展栏。 下面对如图 5-16所示的参数卷展栏做一简单介绍。
从零开始 完全征服
137
图 5-16 “挤压”修改器参数卷展栏
(1)“轴向膨胀”:此区域有两项参数,分别如下。 ①“数量”:用来控制对物体膨胀的程度。 ②“线”:用来控制凸出曲线轮廓的曲度。
(2)“径向挤压”:此区域也有两项参数,分别如下。
①“数量”:用来控制对物体挤压的程度。 ②“线”:用来控制挤压曲线轮廓的曲度。 ③“限制 ” :它的具体用法这里也不再重复。
(3)“效果平衡”:该组参数用来设置凸出和挤压影响的平衡效果,其参数分别如下。 ①“偏向 ” :用来设置凸出和挤压效果向上或向下的偏向度。 ②“体积”:设置凸出和挤压部分的体积大小。
下面对如图 5-11所示的柱体施加一个“挤压”修改器,并设置参数如图 5-16所示,便会得到如图 5-17所示的效果。
图 5-17 挤压结果
5.2.6 “涟漪”修改器
此修改器用于在物体表面产生一串同心波,并且从中心向外辐射,振动物体表面的顶点以形成涟漪效果。 可以对同一个物体指定多个涟漪修改。 通过移动物体和涟漪中心, 还可以改变或增强涟漪效果。 它与涟漪空间 扭曲物体的作用相同,只是空间扭曲通常用于制作大量物体的涟漪效果。其“参数”卷展栏如图 5-18所示。
Chapter01 Chapter02 Chapter03 Chapter04
第 一 部 分 基 础 实 例
138
下面对如图 5-18所示的参数卷展栏做一简单介绍。
图 5-18 “涟漪”修改器参数卷展栏
(1)“振幅 1” :设置涟漪沿物体自身 Y 轴的振动幅度。
(2)“振幅 2”:设置涟漪沿物体自身 X 轴的振动幅度。
(3)“波长”:设置每一个波动的长度。波长越小,产生的扭曲也就越多。
(
4
) “相位 ”
:设置波从涟漪中心点发出的振幅偏移。此值的变化可记录为动画,产生从中心向外连续波 动的涟漪效果。
(5) “衰退 ” :设置从涟漪中心向外衰退振动影响,靠近中心的地区振动最强,随着距离的拉远,振动也 逐渐变弱,这一点正符合自然界中的涟漪现象。当水滴落入水中后,水波向四周扩散、振动衰减直至消失。默 认值为 0表示没有衰减效果。
使用“涟漪”修改
器制作水波纹效果
下面结合实例对“涟漪”修改器做一简单介绍,如图 5-19所示。创建一
个 平面 ,并设置它的段数为比较多,以保证涟漪效果比较光滑。然后,给平
面施加一个“涟漪”修改器,设置参数如图 5-18所示。得到如图 5-20所示
的结果。
平面:
第 3章 /3.1.10 创建平面
图 5-19 原始平面 图 5-20 涟漪修改结果
5.2.7 “噪波”修改器
此修改器可对物体表面的顶点进行随机变动, 使表面变得起伏而不规则。 它常用于制作复杂的地形和地面, 也常常指定给物体以产生不规则的造型,如石块、云团和皱纸等。它还自带有动画噪波设置,只要打开它,就 可以产生连续的噪波动画。 它与涟漪空间扭曲物体的作用相同, 只是空间扭曲通常用于制作大量物体的涟漪效 果。其参数卷展栏如图 5-21所示。
从零开始 完全征服
139
下面对如图 5-21
所示的参数卷展栏做一简单介绍。
图 5-21 “噪波”修改器参数卷展栏
(1)“噪波”。
①“种子”:用来设置噪波随机种子,不同的随机种子会产生不同的噪波效果。
②“缩放”:设置噪波影响尺寸,值越大,产生的影响越平缓,值越小,影响越尖锐。 ③“分形”:勾选此复选框可以得到更为杂乱的噪波效果。
④“粗糙度”:设置表面起伏的程度,值越大,起伏越剧烈,表面越粗糙。
⑤“迭代次数”:设置分形函数的迭代次数,值越小地形越平缓,值越大地形越起伏。 (2)“强度区域”:分别控制
3个轴向上对物体噪波的强度影响,值越大,强度越剧烈。
(3)“动画躁波”:使用系统内定的噪波动画控制,无需进行动画记录,只需勾选此复选值就可。 ①“频率”:控制噪波的抖动速度,值越大,噪波抖动越剧烈。 ②“相位”:控制起始点和结束点的偏移位置。 下面结合实例对噪波修改器做一简单介绍。
球体:
第 3章 /3.1.3创建球体 如图 5-22所示。在视图中创建一个 球体 ,给平面施加一个“噪波”修改
器,设置参数如图 5-21所示。得到如图 5-23所示的结果,利用它可以很快 捷地制作出山地效果。
图 5-22 原始球体
图 5-23 噪波修改结果
5.2.8 “倾斜”修改器
Chapter01 Chapter02 Chapter03 Chapter04
第 一 部 分 基 础 实 例
140
此修改器可用于对物体或物体的次物体集合进行倾斜操作, 使其在指定的轴向上产生倾斜变形。 其参数卷 展栏如图 5-24所示。
图 5-24 “偏斜”修改器参数卷展栏
下面对如图 5-24所示的参数卷展栏做一简单介绍。
(1)“倾斜”。
①“数量”:用来控制对物体倾斜的程度。
②“方向”:用来控制对物体倾斜的方向。
(2)“倾斜轴” 用来控制物体倾斜的坐标轴向。
(3)“限制 ” :它的具体用法这里也不再重复。
使用“偏斜”修改
器制作偏斜的手杖
下面结合实例对“倾斜”修改器做一简单介绍。
如图 5-25所示。在视图中创建一个法器,然后,给柱体施加一个“倾斜”修改器,设置参数如图 5-24所 示。得到如图 5-26所示的结果,利用该修改器可以很快捷地制作出倾斜效果。
图 5-25 原始物体 图 5-26倾斜修改结果
5.3
沙场秋点兵——
13大常用修改器
3ds max 8中的编辑修改器有几十类之多,而且功能非常强大,几乎能完成所有的建模和修改工作,下面 重点介绍 13大常用的修改器,至于其他的修改器,读者可以参照本书的讲解形式自行进行学习与练习。
从零开始 完全征服
141
5.3.1 “变换”修改器
“变换”修改器是一个比较特殊的修改器,它没有任何参数,但它在 3ds max 8的动画制作中却发挥着重大
的作用。下面,使用“变换”修改器制作一个压扁的足球效果,来理解“变换”修改器的强大。其具体步骤如下。
使用“变换”修改
器制作压扁的足球
初始化场景,在前视图中打开一个足球模型,如图 5-27所示。然后,使用非等比例缩放将它压扁,结果 如图 5-28所示。
图 5-27 原始足球
图 5-28 压扁结果
尝试旋转足球,这时会发现,因为足球经过非等比例缩放,在旋转的时候就会出现颠倒现象。 对足球施加“变换”修改器。
按 N 键激活动画记录状态,前进到第 100帧。在堆栈栏中选择“变换”修改器的次物体“边界盒”,然 后在视图中将“边界盒”线框向前移动一定距离,并将其旋转,足球也会随着向前移动和旋转。单击播放动画 按钮 ,即可体会该修改器的作用。
5.3.2 “置换”修改器
这是一个具有奇特功能的工具,它可以将一个图像映射到三维物体表面,对三维物体表面产生凹凸影响, 白色的部分将凸起,黑色的部分将凹陷。它不仅可以作用于三维物体,还可以作用于粒子系统。贴图置换空间
扭曲和“置换”编辑修改器功能类似,当只对单个或几个物体作贴图置换时,可以使用“置换”编辑修改器。
需要注意的是这个工具对图像的要求较高,图像的处理要通过其它软件来完成(如 Photoshop 、 Painter 等),如果是彩色图像,“置换”会自动按其灰度方式进行贴图置换。“置换”不仅可以使用位图图像,还可 以使用 3ds max内部的所有贴图模块(如水波、木纹、大理石等)。“置换”的贴图坐标与材质相同,具有平 面、圆柱、球体、包裹 4种方式,针对不同形态的三维物体。可以将一张人脸贴图置换到球体表面产生三维人 脸造型,也可以将噪波贴图置换产生连绵的山脉。
下面就将如图 5-29所示的贴图置换参数卷展栏中的常用参数做一简单介绍。 (1)“置换”。
①“强度”:设置贴图置换对物体表面影响的强度,值越大,效果越强烈。 ②“衰减 ” :调整它的数值可以根据距离的远近提高或降低影响的强度。
③“中心”:这个中心亮度值用来控制界限划分的位置,缺省值为“ 0.5”,即 50%。调整它的大小可以 改变凹凸的面积分配。
(2)“图像”。
Chapter01 Chapter02 Chapter03 Chapter04
第
一 部 分 基 础 实 例 142
图 5-29 “置换”修改器参数卷展栏
①“位图”:单击 按钮可以浏览选择一张图片作为置换贴图文件。而单击它下面的
按钮便可将上面的置换贴图文件删除。
②“贴图”:功能同上,但可选范围更广,它包括 3ds max 8中所有的贴图形式。 ③“模糊”:用于柔化置换造型表面尖锐的边缘。
5.3.3 “晶格”修改器
它是 3ds max 8中一项很实用的功能,它可以根据物体的网格结构将物体晶格化,很快捷地做出一些框架 结构。下面对如图 5-30和图 5-31所示的参数卷展栏常用参数做一简单介绍:
图 5-30 “晶格”修改器参数卷展栏 1
图 5-31 “晶格”修改器参数卷展栏 2
(1)“几何体” 该组参数用来指定修改器是作用于整个物体还是作用于次物体选择集,并控制支柱和 节点的显示情况。
如图
5-32所示。在视图中创建一个 长方体 ,并设置其段数,对它施加晶 格化修改器,在几何体区域分别选择“仅来自顶点的节点”、“仅来自边的 支柱”、“二者” 3个单选按钮得到如图 5-33、图 5-34和图 5-35所示的 结果。
长方体:
第 3章 /3.1.1创建长方体
从零开始 完全征服
143
图 5-32 操作物体
图 5-33 选择“仅来自顶点的节点”
图 5-34 选择“仅来自边的支柱”
图 5-35 选择“二者”
(2)“支柱”。
①“半径”:用来控制如图 5-34所示的框架的外接圆的半径大小。 ②“段数”:用来控制框架段数。
材质的 ID 号: 第 6章 /6.3.11 多维 /子对
象材质
③“边数”:用来控制框架边数,边数越多,框架就光滑,越接近圆形。
对如图 5-34所示的框架结构增大边数,便可得到如图 5-36所示的结果。
“材质 ID ”:用来设置 材质的 ID 号 。通过它的设置,可以实现给同一
物体的不同部位赋以不同的材质。
(3) “节点 ” 。 和框架区域相似,它用来控制节点的属性。不太一样的是它的“段数”与框架区域的“边 数”相似,修改它的参数,便可在如图 5-36所示结果的基础上得到如图 5-37所示的结果。
图 5-36 修改框架参数
图
5-37 修改节点参数后的效果
5.3.4 “网格光滑”修改器
此修改器可用来对不规则尖锐的表面进行光滑处理, 并加入更多的面来代替直面表面部分。 使用这个命令 会大大增加物体表面的复杂度,但它的确是一个非常有用的工具。它不仅可 以光滑整个物体,还可以对局部次物体集合进行光滑处理。通常用一些简单 的几何体作为基本形状,在对它们进行 布尔合成反向运算 后,再加入光滑命
布尔合成运算: 第 3章 /3.3.4“布尔合成
集运算”工具
Chapter01 Chapter02 Chapter03 Chapter04
第
一 部 分 基 础 实 例
144 令,以制作出柔软光滑的曲面造型。
下面将如图 5-38所示的网格光滑修改器“细分量”参数卷展栏中的一些常用参数做一简单介绍:
“迭代次数”:设置光滑函数的迭代次数,值越大光滑后模型面数就越多。
图 5-38 “细分量”参数卷展栏
“光滑度”:用来控制模型的光滑程度,值越大,模型就越光滑。
上面两个参数用来控制模型在视图中的显示结果,而如果勾选“渲染值”区域的迭代次数和光滑度,则对 渲染视图中的图像显示进行控制,而与上面两个参数的设置没有关系。
使用“网格光滑”修
改器制作 “光滑的手”
如图 5-39所示是一个粗糙的怪物手,对它施加网格光滑修改器,设置参数如图 5-38所示,便会得到如图 5-40所示的结果,请读者进行比较。
图 5-39 操作物体
图 5-40 光滑结果
5.3.5 “法线”修改器
使用此修改器允许用户在不加入 “网格编辑” 修改器的前提下来统一或翻转法线方向。 在对一网格物体的 法线进行编辑时, 通常是为物体加入网格编辑修改, 在网格编辑修改中来编辑物体的法线。 但是在只想对法线 进行编辑时,加入网格编辑修改显然会占用大量的内存,此时可通过加入此修改工具来减少大量内存的占用。 下面将如图 5-41所示的法线修改器参数卷展栏做一简单介绍。
图 5-41 “法线”修改器参数卷展栏
如图 5-41所示,法线修改器参数卷展栏非常简单,只有如下两项参数。 “统一法线”复选框。选中该复选框,将统一所有被选物体的法线方向。 “翻转法线”复选框。选中该复选框,将翻转被选择的物体的法线方向。
如图 5-42所示,在视图中创建一个球体,然后为它施加法线修改器,勾选下面的“翻转法线”复选框,
从零开始 完全征服
145
得到如图 5-43所示的结果。
图 5-42 操作物体 图 5-43 翻转法线
如图 5-44所示。是两个法线方向不同的球体,同时选中它们,然后为它们施加法线修改器,勾选“统一 法线”复选框,便可以将它们的法线方向统一,得到如图 5-45所示的结果。
图 5-44 操作物体
图 5-45统一法线
5.3.6 “路径变形”修改器
此修改器用来控制物体沿路径曲线变形。 它多用于动画制作中, 通过它, 物体在指定的路径上不仅沿路径 移动,同时还会发生形变,常用这个功能表现文字在空间滑行的动画效果。下面将如图 5-46所示的路径变形 修改器参数卷展栏中的一些常用参数做一简单介绍。
图 5-46 “路径变形”修改器参数卷展栏
(1)“拾取路径”:单击此按钮,可以在视图中为选择物体拾取一条曲线作为动画的移动路径。 (2)“百分比”:用来控制选择物体在移动动画中的大小变化。 (3)“拉伸”:用来对选择物体在移动动画中进行拉伸变化。
(4)“旋转”:用来实现选择物体在移动动画中位置的旋转变化。 (5)“扭曲”:用来实现选择物体在移动动画中位置的扭曲变形。
Chapter01 Chapter02 Chapter03 Chapter04
第
一 部 分 基 础 实 例 146 (6)“路径变形轴”:此区域用来控制所拾取路径的轴向,勾选最后的“翻转”复选框可以将所选的路 径轴向翻转。
5.3.7 “推力”修改器
此修改器可用来沿公共法线“推力”物体的顶点,通常用于产生膨胀的效果。下面将如图 5-47所示的推 动修改器参数卷展栏中的一些常用参数做一简单介绍。
图
5-47 “推力”修改器参数卷展栏
“推力值 ” :用来设置顶点相对于物体中心点推动的距离。设置为正值,将向外推动顶点;为负值,则向 内推动顶点。
5.3.8 “松弛”修改器
此修改器可通过向内收紧表面的顶点或向外松弛表面的顶点来改变物体表面的张力, 松弛的结果是使原物 体更光滑,体积更小。它不仅可以作用于整个物体,也可以作用于其下层的次物体选择集,对物体的局部进行 松弛修改。在制作人物动画时,弯曲的关节常会产生坚硬的折角,使用松弛修改即可以将它揉平。
下面将如图 5-48所示的松弛修改器参数卷展栏中的一些常用参数做一简单介绍。
图 5-48 “松弛”修改器参数卷展栏
(1) “松弛值 ” :用来设置向内收紧表面的顶点或向外松弛表面的顶点的程度, 它的数值在 -1~1之间变化。
(2)“迭代次数”:设置松弛函数的迭代次数,值越大修改器对表面顶点的操作效果就越明显。
如图 5-49所示。在视图中创建一个圆球,然后对它施加松弛修改器并设置参数如图 5-48所示,得到如图 5-50所示的结果。
图 5-49 操作物体
图 5-50 松弛修改结果
从零开始 完全征服
147
5.3.9 “抽壳”修改器
3ds max 8中的网格物体都是由无厚度的面组成的,这些面结合在一起,就会形成一个三维实体。但是, 如果该实体上面有一个缺口, 则会看到实体的内部是空的, 缺口处的面是无厚度的, 这与现实世界是不相符的。 “抽壳”修改器可弥补这一缺陷,它可以将开放的网格物体的表皮增加厚度。
如图 5-51所示是一个没有厚度的半球形网格体,选中它,然后对它施加一个“抽壳”修改器,便会弹出 抽壳修改器的参数面板,分别设置“向内数量”和“向外数量”的值便可在原来网格体的基础上分别向内向外 增加网格体的厚度,得到如图 5-52所示的结果。
图 5-51 原网格体
图 5-52 抽壳修改结果
5.3.10 “切片”修改器
此修改器将会建立一通过网格物体的切片, 并在切片与网格物体相交处建立新的点、 边和面, 也可利用它 将网格物体在切面的上面部分或下面部分删除。
下面将如图 5-53所示的切片修改器参数卷展栏中的一些常用参数做一简单介绍。 (1)“切片类型 ” :此区域用来控制切片的方式,其共分为4种,具体用法如下。
①“优化网格 ” :勾选此单选按钮时,只是将切片的物体结构线重新定义,但是原来的物体仍是一个整体。
图 5-53 “切片”修改器参数卷展栏
如图 5-54所示是没有切片前的物体的侧面,在对物体施加切片修改器后,在堆栈栏中选择“ Slice Plane”
次控制层级, 然后利用移动工具以动它的位置确定切片位置。 再次将物体塌陷成网格物体, 点选上次选择的面 便会得到如图 5-55所示的结果。
② “分割网格” :选中此单选按钮后, 物体在进行切片操作后, 将会沿着切片平面被分成两个分开的部分, 如图 5-56所示。物体在“优化网格 ” 切片方式下切片后拖动物体的次物体层级,可以看到原来的物体仍连为一 体。而如图 5-57所示则是“分割网格”方式后的拖动结果,请读者比较。
Chapter01 Chapter02 Chapter03 Chapter04
第 一 部 分 基 础 实 例
148
图 5-54 切片前 图 5-55 切片后
图 5-56 “优化网格 ” 方式 图 5-57 “分割网格”方式
③“移除顶部”和“移除底部”:可以看到在展卷栏下有两个删除单选按钮,它们依次将网格物体在切面 的上面部分或下面部分删除。
(2)“操作于”:此区域用来控制切片的次物体层级作用对象。
① “三角形面”:单击次按钮,切片的次物体层级作用对象为三角形面。
② “多边形面”:单击次按钮,切片的次物体层级作用对象为多边形面。
5.3.11 “编辑样条曲线”修改器
3ds max 8中二维物体的创建中,有一些不能对物体直接进行点、线段、样条曲线 3个次物体级别的编辑 修改。使用编辑样条曲线修改工具,便可以对创建的二维样条曲线进行点、线段、样条曲线 3个次物体级别的 编辑修改。
通过此修改器,可以对二维曲线进行局部修改。
5.3.12 “变形”修改器
使用此修改器,可以将网格物体、面片物体、曲面物体和曲线等各种形状进行多种不同的变形,并且可将 每种变形加入到一通道中,以在此通道中进行动画设置。 “变形”修改器中提供了 100个变形目标通道,可以 将这 100个变形目标通道中的几个甚至全部混合起来,形成更奇特的造型。 3ds max 8中的“变形”修改器还 可以实现渐变变形功能。下面结合实例将它的具体用法做一简单介绍。
在视图中创建一个 长方体 ,将它转化成网格物体,并将它复制。然后,
对其中一个物体作为目标物体进行编辑,再选择另一个没有变形的物体,为
它施加一个“变形”修改器,在展卷栏中单击 按钮,在场景
中拾取一个变形器目标对象,然后在“频道列表”项下找到目标物体通道,调节其参数,选择物体将以目标物 体为参照进行变形。
长方体:
第 3章 /3.1.1创建
长方体
从零开始 完全征服
149
5.3.13 HSDS层级子分割表面修改器
此修改器通常不作为主要的建模工具,而只是作为建模后期的细调。在一般情况下,应该使用诸如“次对 象变换”和“平滑”等编辑修改器来完成主要的建模工作。 HSDS 编辑修改器的主要功能是局部细化、分层建 模和适应性细分。它通过层次来细分曲面,可为模型增加细节并起到精练模型的作用。
在视图中创建一个球体,将它转化为网格物体并进行节点调节,得到如图 5-58所示的物体,然后对它施 加 HSDS 层级子分割表面修改器,进入它的节点子物体编辑层级,选中原来进行变形的节点,在展卷栏中单
击
按钮, 对选中的节点进行细化。
随着细化等级的增加, 模型变得越来越光滑, 最后便可得到如图 5-59所示的结果。可以看出,它比如图 5-58所示的模型光滑多了。
图 5-58 细化前
图 5-59 细化后
5.4
蜕蛹化蝶 由二维变三维——
二维造型修改器
5.4.1 “挤压”修改器
3ds max 8中的很多模型都是比较规则的(也就是大多数都是基本模型),或者是在比较规则的模型上进 行编辑得到的比较复杂的模型。“挤压”修改器可以把二维图形挤出形成面或体。下面将如图 5-60所示的修 改器参数展卷栏做一简单介绍。
图 5-60 “挤压”修改器参数卷展栏
Chapter01 Chapter02 Chapter03 Chapter04
第 一 部 分 基 础 实 例
150
(1)“数量”:用来控制挤出物体的厚度。
(2
)“分段”:用来控制挤出物体的段数。
(3)“封口”区域,它可以控制挤出物体的上下表面是否封口。
文字工具:
第 2章 /2.1.1文字工具 (4)“输出”区域,它可以控制挤出物体的类型,从上而下分别是面
片物体、网格物体、 NURBS 物体。
如图 5-61所示。在视图中用 文字工具 创建一个文字“ EXT ”,然后对它
施加“挤压”修改器,在展卷栏设置参数便可得到如图 5-62所示的结果。
图 5-61 二维图形 图 5-62
挤压结果
5.4.2 “车削”修改器
此修改器通过旋转一个二维图形或N urbs 曲线来产生三维造型。这是非常实用的造型工具,大多数中心 放射物体都可以用这种方法完成。同上面的修改器一样,它也可以将完成后的造型输出成面片物体或 NURBS 物体。
“车削”修改器参数卷展栏如图 5-63所示。下面对其中比较常用的参数做一简单介绍。
图 5-63 “车削”修改器参数卷展栏
(1)“度数”:此选项用来控制曲线旋转的度数。
(2)“封口”区域:它用来控制旋转物体的上下表面是否封口。
(3)“方向”:它的下面有 X 、 Y 和 Z 3个选项,用来控制曲线旋转的对称轴方向。
(4)“对齐”:此区域用来控制曲线旋转式的对齐方式。
如图 5-64所示。 在视图中用 直线工具 创建并调节成一条曲线, 然后对它
施加“车削”修改器,在展卷栏设置参数,并适当移动其对称轴的位置,便
直线工具:
第 2章 /2.1.1 直线工具
从零开始 完全征服
151
可得到如图 5-65所示的结果。
图 5-64 二维图形
图 5-65 旋转结果
5.4.3 “倒角”修改器
此修改器只能对“图形 ” 使用,即只有选择了平面图形,此工具才可用。使用它可将平面图形挤压成型, 并且在挤压的同时,在边界上加入直角形或圆形倒角。其参数卷展栏如图 5-66所示。下面对其中比较常用的 倒角参数做一简单介绍。
图 5-66 “倒角”修改器参数卷展栏
(1)“起始轮廓 ” :设置原始图形的外轮廓大小。如果为 0,将以原始图形为基准进行倒角制作。 (2)“高度”:用来控制挤出的高度。 “轮廓”:控制对挤出部分的倒角大小。
“倒角” 修改器有三个倒角层级, 在展卷栏中从上而下依次在视图中显示倒角结果。 而且每一个层级都可 以分别设置不同的挤出高度和倒角大小,这样就可以实现一些比较复杂的效果。
如图 5-67所示。 在视图中创建文字二维图形, 然后对它施加 “倒角” 修改器, 在展卷栏设置参数如图 5-66所示,便可得到如图 5-68所示的结果。
范文四:游戏修改器DIY
标 题:《游戏修改器DIY》
作 者: Vegeta
时 间: 2005-02-06,22:43:48
链 接: http://bbs.pediy.com/showthread.php?t=10945
《游戏修改器DIY》
《潜艇大战》v1.0 修改器及源码下载(内含游戏)
近日在整理电脑光盘时,在其中发现了一款名叫《潜艇大战》的小游戏,做得挺有趣的,可怎么也打不通关……郁闷中!于是找来《金山游侠》开始作弊,嘿嘿……结果嘛――当然是爆机喽!
每次玩都用《游侠》修改岂不是很不爽?!那就让我们一起来做个游戏修改器吧!
我们的目标是――
《潜艇大战》(版本:1.0)
所需工具――
《金山游侠III》(玩家们都应该知道吧?版本:III)、
SOFTICE(一款强大的程序调试工具,版本:4.0.5 Build334+IceDump)、 Microsoft Visual C++ (编程利器!版本:6.0+SP5)
预备知识――
游戏修改器的原理很简单,就是修改内存中数据。那么就要用到下面这个API函数:WriteProcessMemory,其函数原型为:
BOOL WriteProcessMemory(
HANDLE hProcess, // handle to process whose memory is written to
LPVOID lpBaseAddress, // address to start writing to
LPVOID lpBuffer, // pointer to buffer to write data to
DWORD nSize, // number of bytes to write
LPDWORD lpNumberOfBytesWritten // actual number of bytes written
);
有了这个API函数我们就可以修改内存中的数据了,让我们一步一步来,把这个游戏做成一个不死版的游戏――
第一部分:获得游戏中关键的数据――这是制作游戏修改器的前提。
首先运行《潜艇大战》,在游戏开始后你只有5次机会,《金山游侠》的使用方法我就不在赘述了,很简单,相信众玩家都会使用。通过一系列的操作并测试后,发现用于存放生命的内存地址在:“0x007B0BE8”。OK!让我们调出SOFTICE,输入下面的命令(其作用是:在对内存“0x007B0BE8”处有写操作
时中断程序):
bpm 007B0BE8 w
回车返回游戏后故意使潜艇中弹使生命数减1,这时SOFTICE会自动跳出并停留在:
0167:00405686 3BCD CMP ECX,EBP(图一)
往上看,大家看到了什么?对,是
0167:0040567D 4A DEC EDX
而EDX存放的就是潜艇中弹之前的生命数,DEC是什么我就不用解释了吧(减
一)?到了这里想必大家也就弄清楚了制作不死版游戏的关键,那就是把“0167:0040567D”处的代码改成什么都不做――
0167:0040567D 90 NOP
也就是――即使潜艇中弹了也不会减少生命数!
第二部分:用VC制作游戏修改器。
我们要制作的这个游戏修改器很简单,不需要MFC,SDK即可完全搞定!
启动VC,依次――[File]-[New]-[Projects]-[Win32 Application]-[输入-Project name]后[OK],选择[An empty project]-[OK]。然后[File]-[New]-[Files]-[选择-C++Source File],起名后[OK]。输入以下代码――
//////////////////////////////////////////////////////////////////////////////////////////
/*
--《潜艇大战》v1.0 修改器--
作者:赵春生
制作时间:17:18 04-1-15
主页:HTTP://TIMW.YEAH.NET
*/
#include
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
//OBJIP
unsigned int OBJ_ip=0x0040567D;//修改潜艇生命数代码的偏移地址
unsigned int OBJ_patch[1]={0x89CA8B90};//其中的90则是NOP的十六进制
HWND hwndOBJ=FindWindow(NULL,"潜艇大战");//获得游戏的窗口句柄 DWORD PID;
HANDLE hProcess;
if (hwndOBJ!=0)
{
SetForegroundWindow(hwndOBJ);//找到句柄后将游戏设置为当前窗口
GetWindowThreadProcessId(hwndOBJ,&PID);//得到游戏的进程ID
hProcess=OpenProcess(PROCESS_ALL_ACCESS,false,PID);//打开游戏进程
WriteProcessMemory(hProcess,(void *)OBJ_ip,OBJ_patch,1,0);//写入修改后的代码
CloseHandle(hwndOBJ);
CloseHandle(hProcess);
}
else
MessageBox(NULL,"游戏还没有启动吧?","错误!",NULL);
return 0;
}
//////////////////////////////////////////////////////////////////////////////////////////
编译后运行程序,看看效果吧?!怎么样?游戏成为不死版了吧?
在这里我只是给大家介绍了制作游戏修改器的一种思路,本程序还可以做得更加完美,例如:直接使用游戏修改器来加载游戏进行修改,而不是像现在这样:要先运行游戏后才能使用游戏修改器;再有,游戏还有一处修改潜艇生命数的地方,这处在:“0167:00404BEE”,大家有兴趣的话可以自己尝试……欢迎大家和我一起进行交流!本游戏的修改器及其源码可从我的主页下载。
17:18 04-1-15
作 者: Vegeta
时 间: 2005-01-29,13:32:06
链 接: http://bbs.pediy.com/showthread.php?t=10522
《游戏修改器DIY之二》
源码下载
上次我们以一款名叫《潜艇大战》的小游戏作为目标,制作了其相应的修改器,使之成为了不死版的游戏,相信大家在这过程中学到了相关的知识(一年前写的东西了:))。这次我们的目标是《红色警戒2》,制作她的金钱修改器。之所以选择这款游戏作为演示,一方面是出于个人原因:我很喜欢这款游戏;而另一方面则是:这款游戏很具有代表性,相信大多数修改过其金钱数的玩家们都会注意到:她存放金钱的内存地址并不是固定不变的,哪怕重新开始一次任务,她的地址都会改变。与之类似的游戏还有《Mech Commander》等。本篇将教你如何制作此类游戏的修改器。
目标:《红色警戒2》(繁体中文版:1.006)
所需工具:《金山游侠III》、
SOFTICE(版本:4.0.5 Build334+IceDump)、LordPE1.4、
Microsoft Visual C++ (版本:6.0+SP6)
第一部分:获得游戏中关键的数据――这是制作游戏修改器的前提。
首先用《游侠》找到存放金钱数的内存地址(一般情况下会找到三个地址,其中最另类的那个就是我们所需要的):0x68A1B5C,调出SOFTICE,输入下面的命令:bpm 68a1b5c r,回到游戏后SI就产生了中断,你可以看到下面这条指令:
0187:004E2B5A FIADD DWORD PTR [ESI+00000228]
其中ESI的值为0x068A1934,下指令:d esi+228 即得:0x068A1B5C,其
中便是当前的金钱数。追溯这段代码可得:
0187:00494664 MOV EDX,[ECX+24]
0187:00494667 LEA EAX,[ECX+24]
0187:0049466A PUSH EAX
0187:0049466B CALL [EDX+18]
0187:0049466E XOR ECX,ECX
0187:00494670 MOV [ESI],EAX
在0187:0049466A处下断点,SI每次中断后,EAX的值始终是:0x068A1934,如此时下指令:d eax+228 同样可得:0x068A1B5C。现在情况很明了:其中0x228是个定值,我们现在不必理会,关键的问题是EAX的值,就像前面说到的那样:她的值并不是固定不变的,哪怕重新开始一次任务她的值都会随之改变。我们需要做的工作就是写一段自己的代码,将EAX的值保存在一个固定的位置,然后从该位置取得结果,再加上0x228即可得到存放金钱数的内存地址了。所以,我们需要找一个可写的空白区,来存放我们自己的代码和EAX的值。
用LordPE查看Game.exe(一定要做好备份!!!用LordPE查看文件后,即使什么也没做,他也会修改我们的文件……),发现.data段符合我们的要求,我选的位置是:0x42ed60(存放EAX的值),和0x42ed80(存放自己的代码),在0x42ed60处写一些字符串,如:vegeta,这样一来,我们可以用s命令快速找到其在内存中的位置,还可以判断该位置是否被程序所用。
重新开始游戏,SI会在0x0049466A处产生中断。在SI中下指令:
s ds:400000 l ffffffff 'vegeta'
SI提示找到了一个内存地址:018F:0082ED60(0042ED60),这段内存程序并没有占用,现在就可以在0x0082ED80(0042ED80)处写我们自己的代码了。在这之前,我们先修改0x0049466A,让他跳到我们的代码,下指令:
a 49466a
输入:
jmp 82ed80 //跳到我们的代码处执行
nop //补指令长度
修改后的代码为:
0187:0049466A E911A73900 JMP 0082ED80
0187:0049466F 90 NOP
0187:00494670 8906 MOV [ESI],EAX
现在写入我们的代码:
a 82ed80
依次输入:
mov dword ptr [82ed60],eax //将EAX的值保存到:0x82ed60
push eax //\
call [edx+18] //恢复被JMP 0082ED80破坏掉的指令
xor ecx,ecx ///
jmp 00494670 //返回游戏程序继续执行
修改后的代码为:
0187:0082ED80 A360ED8200 MOV [0082ED60],EAX
0187:0082ED85 50 PUSH EAX
0187:0082ED86 FF5218 CALL [EDX+18]
0187:0082ED89 33C9 XOR ECX,ECX
0187:0082ED8B E9E058C6FF JMP 00494670
检查无误后记下机器码(我习惯用IceDump的抓屏),在0x0082ED85处设断点,F5返回游戏后便会产生中断,此时下指令:
d *0082ED60+228
这时你就会看到金钱数了……注意:0x0082ED60可是个定值啊!
第二部分:用VC制作游戏修改器。
本程序每次运行将增加金钱至60000$。
程序源码中的重点部分我已经做了相应的注释,这里要说的是:
1:这段代码同时支持Win9x和NT系统,由于要找到目标进程的ID,所以我枚举了系统中的所有进程,然后根据进程名来确定我们的目标进程,但是,ToolHelp API中的szExeFile在这两种不同的系统中的返回值是有很大差异的:一个带有路径,另一个不带路径(有兴趣的朋友可以参照《如何在NT下获取进程的路径》一文)。所以,在Win9x系统中,本程序需要拷贝到游戏的所在目录中才能正确运行。
2:要先写我们的代码(0x0082ED80),然后再改写要跳转到我们代码中去的代码(0x0049466A)。
3:由于《红色警戒2》在程序切换的过程中会暂停游戏,所以在修改金钱
数的地方做了一个延迟:以便用户有足够的时间返回游戏,这样游戏才会执行我们的代码,把金钱的内存地址放到0x0082ED60中去。如果没有这个延迟,游戏还没有将金钱地址放到0x0082ED60,ReadProcessMemory()就去获取金钱地址了,那WriteProcessMemory()也就写错了地方……
4:用Game.exe的备份替换掉修改后的程序,因为在0x0042ED60处我们写了一些字符串。如果不这样做,该修改器第一次运行时则不会正确修改你的金钱。想想为什么会这样?当家庭作业了。
5:最重要的一点!我十分喜欢这个游戏。做这个修改器只是练手,我平时可是不用她的……
//////////////////////////////////////////////////////////////////////////////////////////
/*
* --《Red Alert 2》v1.006 繁体中文版金钱修改器Demo--
* 作者:赵春生
* 制作时间:15:30 2005-01-27
* 主页: http://timw.yeah.net http://timw.126.com
* 本程序适用于:Win9x/NT
* 代码在Win2000P+SP4 + VC6+SP6测试通过
*/
#include
#include
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
HANDLE handle=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); PROCESSENTRY32* info=new PROCESSENTRY32;
info->dwSize=sizeof(PROCESSENTRY32);
BOOL report;
DWORD PID;
HANDLE hProcess;
char *szName="game.exe";//目标进程名
int i=0;
//OBJ_INFO
unsigned int OBJ_mycode[4]={0x82ED60A3,0x52FF5000,0xE9C93318,0xFFC658E0};
unsigned int OBJ_jumptomycode[2]={0x39A711E9,0x9000};
unsigned int OBJ_money[1]={0xEA60};//60000$
unsigned int OBJ_money_ip[1]={0x0};
unsigned int OBJ_code[1]={0x0};
char OBJ_path[255];//目标所在目录
GetCurrentDirectory(255,OBJ_path);//获取当前目录
strcat(OBJ_path,"\\game.exe");//目标所在目录
report=Process32First(handle,info);
while(report)
{
if((strncmp(strlwr(info->szExeFile), strlwr(szName), strlen(szName)) == 0)||(strncmp(strlwr(info->szExeFile), strlwr(OBJ_path), strlen(OBJ_path)) == 0))
{
PID=info->th32ProcessID;
//打开游戏进程
hProcess=OpenProcess(PROCESS_ALL_ACCESS,false,PID);
ReadProcessMemory(hProcess,(int *)0x0049466A,OBJ_code,1,0);
//获取0x0049466A代码:如为修改前的0x50或修改后的0xE9则继续运行, //否则可认定游戏版本不符。
if (OBJ_code[0]==0x50||OBJ_code[0]==0xE9)
{
//写入代码
WriteProcessMemory(hProcess,(int *)0x0082ED80,OBJ_mycode,16,0);
WriteProcessMemory(hProcess,(int *)0x0049466A,OBJ_jumptomycode,6,0);
for (i=0;i
{
//取金钱地址
ReadProcessMemory(hProcess,(int *)0x0082ED60,OBJ_money_ip,4,0);
if (OBJ_money_ip[0]==0x0)
{
Sleep(5000);
else
{
//如果得到金钱地址则写入“60000$”
WriteProcessMemory(hProcess,(int *)(OBJ_money_ip[0]+0x228),OBJ_money,2,0); i=10;
}
}
}
else
MessageBox(NULL,"请检查游戏版本。","错误!",NULL);
break;
}
report=Process32Next(handle,info);
if (report==0)
MessageBox(NULL,"游戏还没有启动吧?","错误!",NULL);
}
CloseHandle(hProcess);
return 0;
}
//////////////////////////////////////////////////////////////////////////////////////////
三:以上代码在Win2000P+SP4 + VC6+SP6测试通过。
源码可从我的个人主页下载。
http://timw.yeah.net
http://timw.126.com
12:02 2005-1-28
作 者: Vegeta
时 间: 2007-04-29,15:31:24
链 接: http://bbs.pediy.com/showthread.php?t=43582
《游戏修改器DIY之三》
——用C#读写游戏进程内存
天津 赵春生
相关下载
这是《游戏修改器DIY》系列的第三篇,通过前两篇拙作相信大家对游戏修改器的制作有了初步的了解,前两篇使用的编程工具是“Microsoft Visual C++ 6.0”,而这次将使用“Microsoft Visual C# 2005 Express Edition”。在C#中使用API可不像在C/C++那么简单,因为对我来说,C#还很陌生……
本篇不再赘述游戏修改器的原理了,如果对此不了解的朋友可先看看我写的前两篇拙作或其他相关资料。
一:在C#中使用API。
首先要导入一个namespace,以便简化后面的代码输入:
using System.Runtime.InteropServices;
其次要使用DllImport引入API函数,如:
[DllImport("user32.dll", charset=utf-8.Auto)]
public static extern int MessageBox(IntPtr hWnd, String text, String caption, uint type);
现在就可以使用了,如:
MessageBox(new IntPtr(0), "Hello World!", "Hello Dialog", 0);
为了使用方便,我制作了一个简单的类:
class ProcessMemoryWorkApi
{
//HANDLE OpenProcess(
// DWORD dwDesiredAccess,// access flag
// BOOL bInheritHandle, // handle inheritance flag
// DWORD dwProcessId // process identifier
// );
[DllImport("kernel32.dll")]
public static extern
IntPtr OpenProcess(UInt32 dwDesiredAccess, Int32 bInheritHandle, UInt32 dwProcessId);
//BOOL CloseHandle(
// HANDLE hObject // handle to object to close
[DllImport("kernel32.dll")]
public static extern
Int32 CloseHandle(IntPtr hObject);
//BOOL WriteProcessMemory(
// HANDLE hProcess, // handle to process whose memory is written to
// LPVOID lpBaseAddress, // address to start writing to // LPVOID lpBuffer, // pointer to buffer to write data to // DWORD nSize, // number of bytes to write
// LPDWORD lpNumberOfBytesWritten // actual number of bytes written
// );
[DllImport("kernel32.dll")]
public static extern
Int32 WriteProcessMemory(IntPtr hProcess, IntPtr lpBaseAddress, uint[] lpBuffer, UInt32 nSize, IntPtr lpNumberOfBytesWritten);
//BOOL ReadProcessMemory(
// HANDLE hProcess, // handle of the process whose memory is read
// LPCVOID lpBaseAddress, // address to start reading
// LPVOID lpBuffer, // address of buffer to place read data // DWORD nSize, // number of bytes to read
// LPDWORD lpNumberOfBytesRead // address of number of bytes read
[DllImport("kernel32.dll")]
public static extern
Int32 ReadProcessMemory(IntPtr hProcess, IntPtr lpBaseAddress, uint[] lpBuffer, UInt32 nSize, IntPtr lpNumberOfBytesRead); }
二:用C#制作游戏修改器。
游戏是大家熟悉的“三维弹球”,这是WinXP自带的一款游戏,目的是修改她的分数,选这个游戏的原因是因为大家都能很容易地得到她,而且修改起来也很方便:取0x1025040中的值,然后与0x52相加,即可得到存放游戏分数的地址。
单击“Go”按钮,可显示当前分数,并将分数改为:“999600000”(图1),关键代码如下:
private void button_go_Click(object sender, EventArgs e)
{
IntPtr PinballHandle;
IntPtr PinballScoreAddressPointer = (IntPtr)0x1025040; //内存0x1025040中的值+0x52->PinballScoreAddress
uint[] PinballScoreAddress = new uint[1]; /
/游戏分数的内存地址
uint[] PinballScoreWrite = new uint[] { 0x3B94AF80 }; //将分数改为:999600000
uint[] PinballScoreRead = new uint[1]; //用来存放当前分数
//"3D Pinball"在“Windows 任务管理器”中显示为"PINBALL.EXE",但作为
//GetProcessesByName的参数使用时并不能包含扩展名".EXE"。 System.Diagnostics.Process[] PinballProcessID
= System.Diagnostics.Process.GetProcessesByName("PINBALL"); //根据进程名获取进程ID
if (PinballProcessID.Length != 0)
{
PinballHandle = ProcessMemoryWorkApi.OpenProcess(0x1F0FFF, 0, (UInt32)PinballProcessID[0].Id); //PROCESS_ALL_ACCESS=0x1F0FFF
ProcessMemoryWorkApi.ReadProcessMemory(PinballHandle, PinballScoreAddressPointer, PinballScoreAddress, 4, (IntPtr)0);//通过指针得到PinballScoreAddress
PinballScoreAddress[0] = PinballScoreAddress[0] + 0x52; //PinballScoreAddress+0x52才是游戏分数的内存地址
ProcessMemoryWorkApi.ReadProcessMemory(PinballHandle, (IntPtr)PinballScoreAddress[0], PinballScoreRead, 4, (IntPtr)0); //当前游戏分数
MessageBox.Show("当前分数为: " + PinballScoreRead[0].
ToString() + "\n" + "分数即将被修改成: 999600000", "ProcessMemoryWork_Demo");
ProcessMemoryWorkApi.WriteProcessMemory(PinballHandle, (IntPtr)PinballScoreAddress[0], PinballScoreWrite, 4, (IntPtr)0); //修改游戏分数
ProcessMemoryWorkApi.CloseHandle(PinballHandle); }
else
MessageBox.Show("\"3D Pinball\" 还没有运行吧?", "ProcessMemoryWork_Demo");
}
三:相关提示。
刚刚接触C#不久,对OOP也一知半解,写此文只为抛砖引玉,谢谢!
本程序代码测试环境:
WinXP (Professional SP2)
Microsoft Visual Studio 2005 (Installed Edition: C# Express) Version 8.0.50727.762 (SP.050727-7600)
Microsoft .NET Framework
Version 2.0.50727
《游戏修改器DIY》/《游戏修改器DIY之二》可通过搜索引擎或访问我的Blog获得。
Blog:
http://timw.yeah.net http://timw.126.com
20:35 2007-04-27 上传的附件
134653.zip (96.7 KB, 67 次下载) [谁下载?]
范文五:洛克人修改器
洛克人 X8修改器使用方法说明:
F1:无限生命,只有即死地形才能另你死亡
F2:无限特殊武器能源
F3:无限双重攻击能源 (AT)
F4:幻影模式,被攻击后开启此模式,没有任何东西可以碰到你
F5:一击毙杀,消灭任何敌人仅需要 1击,对 BOSS 也是相同的,但是某些 BOSS 会有特殊时间,请谨慎使用 (比如 HARD 模式的小西 )
F6:无限接关,无论你死多少次,你的接关次数也不会减少
F7:永远 100连击
F8:X 超级攻击,你无须蓄力即可放出蓄力攻击,当然此项仅对 X 有效
F9:冻结时间, 仅仅全球 (这个我不会翻译 ) 的时间不会再增加, 但是事件时间无法 固定,在存档中可以检查
F11:无限赛车推进,用在雷电水母关,你的车可以无限使用推进
F12:返回原状
End :退出
实验室方面:?
数字 1:无限金属 ?
数字 2:开启暗黑 ZERO ,坠天使 AXL ,以及超级装甲 X?
数字 3:开启终极装甲 X (中立装甲) ,将为你开启最强的 X 装甲,另外超级装甲 X 的位置将 会取代 ?
数字 4:开启 6个角色所有的武器,我希望你知道如何更换 ZERO 的武器。 。 。 。 。 X 的终极武器 仅仅用在终极装甲,正规的 X 装甲,不会显示 ?
数字 5:开启所有的 DEV 芯片以及大部分东西,当开启这个选项后,游戏的等级将换为 HARD 模式, 因为很多道具的开发以及使用只能在 HARD 难度……为什么是大部分东西, 但不是全部, 因为很多东西都仅能在不同的难度中使用,顺便说一句, EASY 难度可以开启全部道具