阅读:10312次   评论:0条   更新时间:2011-05-26    



 

书名:Blender权威指南(Blender之父Ton Roosendaal作序推荐,BlenderCN中文社区官方推荐教程)

作者:罗聪翼 著

ISBN: 978-7-111-34073-7

定价:89元

出版社:机械工业出版社

出版时间:2011年5月


编辑推荐:
全球首本中文版Blender著作,BlenderCN中文社区官方推荐教程Blender世界杯艺术挑战赛冠军罗聪翼执笔,Blender之父Ton Roosendaal作序推荐。基础、建模、灯光、渲染、动画与特效全接触。

内容简介:
      Blender是全球首款开源3D制作软件,也是最成功和最受欢迎的3D动画制作软件之一。本书是全球首本中文Blender著作,由国内资深Blender专家、Blender世界杯艺术挑战赛冠军亲自执笔,Blender之父亲自作序推荐,国内权威的Blender中文社区BlenderCN官方推荐教程。
    《Blender权威指南》内容系统而全面,详尽地讲述了Blender的各种功能和特性,并一步一步地讲解了它们的使用方法,可操作性极强;技术新颖,基于最新版的Blender撰写;实战性强,书中不仅设计了大量精巧的小案例,以及详细介绍了这些案例的实现过程,而且还包含4个工程性的大案例。本书不仅能满足你全面而系统地学习Blender理论知识的需求,还能满足你需要充分实践的需求。
      全书分为三个部分:基础篇以全球20位顶尖Blender艺术家自述学习和使用Blender的经验开篇,全面地介绍了Blender的基本功能及其操作方法,包括Blender的安装与配置、基本的操作与界面、建模、修改器、灯光、材质与贴图、渲染等内容;高级篇讲解了Blender的一些高级特性和扩展用法,包括动画工具、物理特效与仿真、后期合成、Python脚本扩展和游戏引擎等重要内容;实例篇以迭代的方式介绍了汽车建模与机械绑定、角色模型制作、室内效果图应用和角色动画等4个经典的工程性案例的制作方法与过程,极具实践指导意义。
      无论你是有经验的Blender用户,还是还没有经验的Blender爱好者,无论你是CG和3D动画爱好者/艺术家,还是2D平面艺术家,本书不仅能帮助你掌握基本的专业技能,熟悉项目工作的流程,还能激活你的创作设计灵感,积累实战经验技巧,最终实现你的数字艺术梦想。

作者简介:
      罗聪翼,资深Blender专家,国内Blender技术的先驱者和布道者,在国际Blender社区也有一定的知名度和影响力。2008年在Blender基金会举办的F1艺术大赛中荣获第7名,2009年在Blender世界杯艺术挑战赛中获得世界冠军,经验极其丰富。因为对Blender技术极致推崇和热爱,他不仅自己一直在这个领域进行探索和实践,而且一直在国内不遗余力地推广和普及Blender技术,与朋友们一起维护和运营着Blender中文官方网站(http://www.blendercn.org/),使国内的Blender中文社区不断壮大,为Blender在国内的普及和发展做出了卓越贡献。


《Blender权威指南》推荐序一 Top

     当罗聪翼先生邀请我为他的新书《Blender权威指南》作一篇序时,按照我以往回应类似请求的习惯,我通常会先感谢这位作者的好意,然后再委婉地谢绝,就像在过去的5年内一样,我这样回复了每一位邀请我写序的朋友。因为现在有关Blender的图书已经相当多了,我甚至都数不清市面上已经有多少本相关的教程和书籍。如果要我为每一位作者都撰写一篇序的话,那工作量简直太大了!
      但是我转回头来,又重新考虑了一下:虽然现在已经出版了数量这么多的Blender图书,但这是第一本正式的Blender的中文教程。这对我本人和每一位熟悉Blender的用户来说,都绝对是划时代的一步!
      在欧洲和北美,Blender已经得到了广泛的实际应用。我相信,对于这款自由开源的软件,亚洲绝对是一个充满更多机会和空间的市场,特别是在中国。开源技术可以为更多的独立艺术家、个人团体、学校或创业型企业带来潜在的巨大推动力,对于像中国这样的新兴经济体,开源和自由体系恰好可以让你获得更强的独立性和自主性。而且更重要的是,它可以允许你实现共享知识产权的建设和发展,让你能获得比同类封闭型产品进步更快速的能力。
      Blender是一款富有魅力的3D制作工具,同时也是一项充满了自由创意和开放源码的公共发展项目。它的进步完全取决于为它的开发做出贡献的软件工程师、使用它的艺术家,以及在线上或线下一起学习并互相激励,为成为优秀的艺术家或设计师而共同努力的CG爱好者们。与此同时,Blender还是一款真正属于“为你量身定做”的软件,就像很多大公司都有一套内部开发的软件系统一样,你完全可以使用它来打造一个真正属于自己的3D创作平台。
      我衷心地希望读者通过对本书的学习,能够打开心扉,实现思维的拓展,同时我也在这里热情地欢迎你加入这个全球性的艺术家和开发者团体。中国有着非常古老而美丽的文化,以及众多富有创意思维和时代风格的艺术家。我真心地期待未来能看到更多由中国设计师使用Blender创作出来的美妙艺术品和精彩动画电影!
      祝福你们可以在阅读本书的过程中寻找到更多的乐趣。
      
                                                                                                                                                                                                      Ton Roosendaal
                                                                                                                                                                                                     Blender基金会主席
                                                                                                                                                                                          荷兰,阿姆斯特丹,2010年11月

 

《Blender权威指南》推荐序二 Top

      最初Blender只是一款用于开发PS游戏的内部工具,但是后来由于公司倒闭,它也差一点就被永远地封存起来。幸运的是,它很快就被由上万爱好者捐款成立的基金会所收购,并以这种特殊的方式,进行了一种生命形式的转变——由私有软件变成了源码公开、大家都可以为其添砖加瓦的开源软件。
      初期的Blender在建模细分上相比同类产品更具有优势,它能够轻松实现多边形在高等级细分下的流畅编辑。紧接着在后来几次围绕短片而进行的集中开发过程中,Blender的功能在逐渐被一一完善,特别是在角色动画方面有了长足的进步。与此同时,Blender的多个功能也逐渐开始能满足行业上的一些应用。如最开始在角色动画方面使用的UV解算技术,就被广泛用在了游戏模型的制作上,很多游戏工作室都在其流水线中加入了Blender,例如经典游戏《火炬之光》的建模开发。由于Blender的各种特效模块设计都十分方便而且易于使用,所以在一些小型的视觉演示中,也常使用Blender来分担一些特效的绘制工作。
      作为一款开源软件,Blender的功能变更是非常迅速和敏捷的,我们也可以理解为其代码和功能的新陈代谢速度非常快。开发者随时都可能因为有更好的功能模块而将原有的模块替换甚至删除掉。但是这样问题也出现了,所有以前编写出版的教程也将因为软件版本的更新而变得完全不可用。所以Blender虽然在功能和技术水平方面一直走在最前沿,但是在用户的知识积累上却产生了很多的困惑和麻烦。例如最新的2.5版已经发布一年多了,但是当用户在网上寻找相关功能介绍时,得到的搜索结果却是屈指可数,甚至连官方的Wiki手册都没有写进这一次的全部更新。而且相比于早期版本(例如2.4)的内容,两个版本之间包括快捷键或者按钮图标都已经完全不一样了!
      由于Blender的特殊开发背景,它在计算机图形学和物理模拟学等方面的技术,很快就以科研的方式引进到了国内,并被国内部分大学实验室用于相关领域的研究。而在实际应用中,Blender和SIO2引擎之间结合得非常好,使用Blender制作的工程可以直接在SIO2中执行读取等操作,所以还在iPhone和iPad的3D游戏方兴未艾之时,国内就已经有很多个人开始将Blender用于开发iPhone手机游戏应用中。现在,国内的一些工作室也已经将Blender作为主要的制作工具,整合进了高清数字电影的创作流程当中,有的是在工作流的一个环节中使用Blender,也有的是在工作流的多个环节中使用它。据不完全统计,Blender在中国大陆的使用情况还处于初中级阶段,并且大部分都集中在京、沪、广三地,其中研发等科研性应用集中在北京,而上海、广州和深圳都逐渐引入了一定程度的商用模式。
      早在2004年的时候,我们就正式成立了BlenderCN中文社区,目的是在国内推广Blender,并提供及时的本地化支持。记得成立初期Blender还是刚开源的2.1版本,基金会也刚经历了开发人员从全部流失到重启开发的一个过程。BlenderCN社区中的朋友都是自发地聚在一起,利用业余时间一边翻译Blender的Wiki文档,一边在讨论中共同学习Blender。不到半年的时间,我们就完成了2.34版本的Wiki翻译,同时也完成了2.4系列版本的汉化工作。可以说,BlenderCN是国内唯一一直坚持到现在的Blender咨询、培训和技术交流社区团队。
      有使用和市场需求就需要有培训和知识转移,但是由于缺乏一本标准的教材,相关的从业人员同国外的使用者比起来,还有相当大的一段差距,同时非正式培训人员的能力评估标准化也亟待解决。就Blender本身的功能来说,差不多涵盖了当今通用数字内容创建工具的所有门类,对于如此庞大的体系,如果没有一本好的参考书在手边,一定会手忙脚乱。而现如今,Blender的成体系书籍很多,不过能找到的大都是英文版,这为国内的学习爱好者增加了不少难度。虽然在社区中,我们会有根据项目经验编制中文视频教程等资源的计划,但是从很多用户和公司的反馈来看,整个中文Blender用户群对一本中文教程书籍的需求迫切性还是相当高的,希望罗聪翼先生的这本书能为改善这种状况带来巨大的推动作用。
      《Blender权威指南》从策划到编写和校对,花了一年多的时间。一年时间可以做很多事情,不过罗聪翼先生选择了坚守,把他的所知所学都寄存到笔下,为后来者留下一块敲门砖。我和罗聪翼先生是在2007年底认识的,他也是在那时才刚开始学习Blender,我和社区中的所有朋友都一同见证着他的进步。他敢于不断地去挑战自己,不断地尝试创作作品,并且积极地参加社区比赛,丰富自己的实战经验,实现自己对CG这个概念的认识。努力追求完美的他,获得的奖项和认同也颇丰,所以国内的第一本中文Blender教程由他来执笔,理所应当。
      本书出版后,BlenderCN的朋友们也将和罗聪翼先生一起,在社区为本书提供相应的技术支持和问题解答。欢迎你加入BlenderCN的大家庭,让我们在这种别样的开源社区中,不断地完善自我,不断地学习成长吧!
      祝各位都能快乐地享受Blender!

                                                                                                                                                                                              裴雪柯(Kidux)
                                                                                                                                                                                      BlenderCN中文社区创始人
                                                                                                                                                                                      中国,成都,2010年12月

 

前言 Top

为什么要写这本书
      几年前当我开始学习CG的时候,不少朋友都向我建议,去试试那些好莱坞都在用的工具吧!于是我开始去图书馆翻书找资料,甚至去咨询了一些专业培训机构。但是我很快便意识到自己犯了初学者常犯的错误:迷信工具的力量!有经验的艺术家都知道,作品的重点不是技术,而在于人。好的工具可以辅助你完成优秀的作品,但是它最终只是一种表面现象,人与软件之间的沟通过程才是创作的本质。
      大学图书馆为我带来了许多美好的回忆,其中之一就是它提供了大量的免费杂志。在一次偶然翻阅美术杂志的时候,我看到了一篇介绍开源电影《Elephants Dream》的文章。一方面我本身就是开源产业的忠实拥护者,另一方面我也厌倦了对大型软件近乎绝望的学习,当然也有我的电脑太过陈旧的因素,那台又破又老的主机根本无法运行庞大的主流制作软件。于是我开始尝试这款只有2MB,甚至连任何中文资料都没有的软件。刚开始,我认为Blender只不过是一种傻瓜版的工具,至少可以让我做点像样的东西出来,而且从当时的角度来看,它也的确如此。但是随着时间流逝,以及对它的深入了解,我才明白,这个软件是我见过的最特别的一款软件,与其他的工具完全不同!
      Blender体现了设计者对它的终极设计目标:为用户降低复杂度,为工作提高效率。开源设计模式是对Blender进步影响最深远的因素之一,因为为用户设计软件总是非常困难,开发者通常无法察觉艺术家对工具操作的要求和希望。而来自开源社区中及时的用户反馈,使得整个过程变得更简单,设计者们可以通过更有效率、更廉价的方式与使用者直接进行沟通,革命性的开源模式让这一切事情变得如此神奇而简单。
      我很欣赏这种模式,学习非共享而不能进步。当你无法负担高昂的培训费,而在一个人的盲目学习中感到失落与无助时,或者当你曾经希望多接触真正的艺术家和专业的工业资源,却无路可走的时候,我认为你可以来试着加入开源社区,学习一下Blender,体验这种人与人之间互动的新兴学习模式。多读书,多交流,志同道合的朋友在一起更容易彼此打气加油,还可以互相切磋,学习很快就能变为一种享受。
      Blender还在不断地演化,它引导的是一场真正的学习革命,是一种全球化思维的碰撞,是一种突破传统封闭式交流的海量数据共享。也许Blender还不是这场革命的导火索,但是至少我认为,能够带领大家去学习和认识这种思维,也是一件非常有意义的事情。
      《Blender权威指南》作为BlenderCN社区监制的第一本中文教程,社区网站http://blendercn.org和http://blog.blendercn.org将为读者提供相应的Blender知识管理和及时的答疑解惑支持,以及国内外最新的Blender资讯。我们的社区是一个非盈利性的民间组织,所有成员都是为了推动Blender在国内的发展,而自愿团结在一起,义务地为公众奉献服务。我很感激社区这么多年来对我的帮助,也敬佩大家为开源事业作出贡献的精神。写书的这一年全靠兴趣为动力,我也并不想以此牟利,所以决定将本书带来的所有收入全部捐献给BlenderCN开源社区,用于支持和维护社区今后的发展。

 

本书目标

    每一个最新版本的Blender都会被下载超过百万次,这个数字还不包括下载源码做自行编译的用户。Blender在全球范围内的使用者也接近上千万,并且每天都有更多的用户开始学习或者转型使用Blender。

    在国外,特别是针对个人艺术家或小型工作室,Blender正在发挥着病毒式的传播影响力。在国内,一部分先行的公司已经开始逐渐引进Blender的工业生产线,将Blender的思维作为一种全新的理念带入国门。

    《Blender权威指南》希望能提供一个从入门到精通的学习过程,无论是初学3D的爱好者,还是行业从业人员,我希望你们都能从本书获益。

 

读者对象

      这里我们根据软件需求划分出一些能使用Blender的用户团体,这些用户都是本书潜在的读者群。

      Blender用户和爱好者

      Blender代码开发自愿者

      CG和3D动画爱好者

      2D平面艺术家或者相关平面设计工作室

      3D动画艺术家或者相关动画广告工作室

      使用Blender参与工作流程的公司与集体

      开设相关课程的大专院校

 

如何阅读本书

      本书分为三大部分,其中第三部分以接近实战的实例来讲解工程应用,相比于前两部分更独立。如果你是一名经验丰富的资深用户,能够理解Blender的相关基础知识和使用技巧,那么你可以直接阅读这部分内容。但如果你是一名初学者,请一定从第1章的基础理论知识开始学习。

      第一部分为基础篇,简单介绍Blender的基本使用技巧和相关理论,帮助读者了解一些基础背景知识,并熟悉Blender的全新操作模式。

      第二部分为高级篇,着重讲解Blender的部分高级应用功能,包括动画工具、物理模拟和后期结点系统等模块。

      第三部分为实例篇,通过对4个不同风格的典型案例进行讲解,让读者能够了解一个完整的Blender生产流程。

      附录A为Blender和BlenderCN的年谱大事记。

      附录B为Blender 2.5以及最新版本的默认快捷键列表。

 

Blender版本

     Blender的发布更新以2.5X的小版本号来表示,本书针对的是2.56版本。相比早期的版本,这个版本的改动很大,弥补了大量的缺陷,引入了很多优秀的新功能,与2.4系列存在巨大差异。对于一些成熟的生产模式,例如iPhone游戏开发,你可能还是需要转回使用2.49版本,因为一些生产配套的第三方软件接口可能还没有完成对新版2.5API的更新。

 

API文档

      Blender基金会维护着API的更新,读者可以登录开发页面去查看对应版本的在线文档。其中2.49版本的API类库最完整,而2.5版本的API还处于更新完善阶段,部分功能还在开发和重写中,所以本书不再重复这份文档。

 

源代码

      本书的所有源代码和工程文件都以Creative Commons Attribute 3.0创作共享许可协议的形式发布,你可以自由使用和学习分享,如果需要应用于商业领域,请注明版权所有者。如果你行使本许可授予的使用源代码的权利,就表明你接受并同意遵守本许可的条款,对其使用不得超越本许可授权的范围。

 

勘误和支持

      由于作者的水平有限,编写的时间也很仓促,书中难免会出现一些错误或者不准确的地方,不妥之处在所难免,恳请读者批评指正。为此,我特意创建了一个在线支持与应急方案的二级站点http://book.blendercn.org。你可以将书中的错误发布在Bug勘误表页面中。同时如果你遇到任何问题,也可以访问Q&A页面,我将尽量在线上为读者提供最满意的解答。书中的全部源文件都将发布在这个网站上,我也会将相应的功能更新及时发布出来。如果你有更多的宝贵意见,也欢迎你发送邮件至我的邮箱congcong009@Gmail.com,我很期待能够听到你们的真挚反馈。

 

关于电子版

      本书中有很多精美的效果图,但是很遗憾,由于考虑到成本和定价等因素,本书未能印刷成彩色。为了便于大家既能以很便宜的价格买到这本书,又能欣赏到书中的美丽图片,我们将同步推出该书的电子版,如果大家有需要,欢迎到中国互动出版网(www.china-pub.com) 购买。

《Blender权威指南》致谢 Top

      我首先要感谢伟大的3D动画精神领袖Ton,他开创了一款影响我整个人生的软件。

      感谢南京航空航天大学的图书馆,它为我大学四年提供了一个轻松而充实的学习环境,还有数不清看不完的书籍和杂志。

      感谢BlenderCN社区中每一位充满创意和活力的朋友——Kidux、DeathBlood、冰冻牡蛎、Harrison、莫克陶、水经石、sumomofan、Mike Pan、中原狼、小无花果他爹、Fox、Steven(ChinaVFX)、疯子小林、月光光、老猫、Johnny孙、zxfyzz、wiilovy、Jollin、遥远的桥、wewe猫、coffee、Magic骏、金鱼、蜗牛的邻居、icebird、blackorange、绵羊小菲、菜肉包、ewalker、城主、铁毛、青春森林,以及这个仓促写就的名单之外的更多朋友,感谢你们长期对社区的支持和贡献。感谢李锟老师的引荐,在你的努力下才促成了这本书的出版。

      感谢机械工业出版社华章公司的编辑杨福川老师,感谢你的魄力和远见。在这一年多的时间中你始终支持我写作,是你的鼓励和帮助引导我顺利完成全部书稿。

      最后我一定要感谢我的爸爸、妈妈、姥姥、姥爷、小姨、婆婆、爷爷,感谢你们将我培养成人,并时时刻刻为我灌输着信心和力量!

      谨以此书,献给我最亲爱的家人,以及众多热爱Blender的朋友们。

 

                                                                                                                                                                            罗聪翼(congcong009)

                                                                                                                                                                           中国,南京,2010年12月

《Blender权威指南》目录 Top

推荐序(一)
推荐序(二)
前言
第一部分  基础篇
第1章  Blender概述3
      1.1  开源简介3
          1.1.1  Blender是什么3
          1.1.2  Blender的发展与历史3
          1.1.3  社区支持6
      1.2  使用Blender的艺术家们8
          1.2.1  Andrew Price8
          1.2.2  Anna Celarek10
          1.2.3  Barath Endre12
          1.2.4  Ben Dansie12
          1.2.5  Colin Levy14
          1.2.6  Enrico Valenza15
          1.2.7  Kamil Kuklo16
          1.2.8  Kevin Hays17
          1.2.9  Mathias Helmuth Pedersen18
          1.2.10  Matt Ebb20
          1.2.11  Mike Pan23
          1.2.12  Pablo Vazquez24
          1.2.13  Robert J. Tiess25
          1.2.14  Sebastian Knig26
          1.2.15  Soenke Maeter27
          1.2.16  Tony Mullen28
          1.2.17  Vitor Balbio30
          1.2.18  Диметр Калинин(Dmitry Kalinin)30
          1.2.19  黄海31
          1.2.20  玉永海33
      1.3  Blender的安装与配置35
          1.3.1  系统要求35
          1.3.2  快速安装37
          1.3.3  本地编译37
第2章  基本操作与界面40
      2.1  Blender基础概念与基本操作40
          2.1.1  鼠标操作与键盘常用功能键40
          2.1.2  物体与原心40
          2.1.3  Blender的界面操作41
      2.2  用户参数设置43
          2.2.1  用户界面设置43
          2.2.2  编辑设置44
          2.2.3  输入控制设置46
          2.2.4  附加脚本设置48
          2.2.5  主题设置48
          2.2.6  文件系统49
          2.2.7  系统设置50
      2.3  窗口类型52
          2.3.1  三维视图52
          2.3.2  时间轴窗口63
          2.3.3  曲线图形编辑器65
          2.3.4  动作编辑器69
          2.3.5  非线性动画编辑器70
          2.3.6  图片编辑器73
          2.3.7  视频序列编辑器75
          2.3.8  文字编辑器77
          2.3.9  结点编辑器79
          2.3.10  逻辑编辑器81
          2.3.11  工具面板81
          2.3.12  大纲管理器81
          2.3.13  信息窗口82
          2.3.14  文件浏览器84
          2.3.15  控制台窗口85
第3章  建模86
      3.1  新建物体87
          3.1.1  网格物体87
          3.1.2  曲线物体88
          3.1.3  骨骼/空物体/摄像机物体89
          3.1.4  灯光物体89
      3.2  编辑模式90
          3.2.1  点线面结构90
          3.2.2  法线结构92
          3.2.3  选择菜单92
          3.2.4  网格菜单95
      3.3  基础网格建模106
          3.3.1  网格快捷工具栏106
          3.3.2  平滑工具106
          3.3.3  使用关联复制实现镜像建模107
          3.3.4  螺旋和细分工具108
          3.3.5  精确切割工具109
          3.3.6  基本建模工具的配合使用范例109
      3.4  高级网格建模112
          3.4.1  顶点组112
          3.4.2  权重绘制113
          3.4.3  雕刻模式114
      3.5  曲线建模121
          3.5.1  曲线的编辑121
          3.5.2  Bezier曲线124
          3.5.3  NURBS曲线125
      3.6  文字建模126
          3.6.1  文字的输入126
          3.6.2  文字的编辑与修改127
第4章  修改器129
      4.1  结构类修改器130
          4.1.1  阵列修改器130
          4.1.2  倒角修改器135
          4.1.3  布尔运算修改器137
          4.1.4  构造修改器138
          4.1.5  精简修改器139
          4.1.6  硬边修改器139
          4.1.7  遮罩修改器140
          4.1.8  镜像修改器142
          4.1.9  细分修改器144
          4.1.10  实体化修改器144
          4.1.11  多重解析修改器146
          4.1.12  UV投影修改器147
          4.1.13  螺旋修改器147
      4.2  形变类修改器148
          4.2.1  骨骼修改器148
          4.2.2  塑性修改器148
          4.2.3  曲线修改器149
          4.2.4  置换修改器150
          4.2.5  晶格修改器152
          4.2.6  钩镰修改器153
          4.2.7  网格造型修改器154
          4.2.8  收缩修改器155
          4.2.9  快速形变修改器157
          4.2.10  平滑修改器158
          4.2.11  波浪修改器159
      4.3  模拟类修改器160
          4.3.1  布料修改器160
          4.3.2  碰撞修改器160
          4.3.3  爆破修改器160
          4.3.4  流体修改器161
          4.3.5  粒子实体修改器161
          4.3.6  粒子系统修改器163
          4.3.7  烟雾/软体模拟修改器163
第5章  灯光164
      5.1  光线的属性164
          5.1.1  光源属性165
          5.1.2  光线衰减166
          5.1.3  贴图灯光171
          5.1.4  体积光171
          5.1.5  灯光的常规控制面板173
      5.2  阴影类型173
          5.2.1  光线追踪阴影174
          5.2.2  缓冲阴影175
      5.3  灯光类型180
          5.3.1  点灯光180
          5.3.2  日光181
          5.3.3  聚光灯185
          5.3.4  半球灯186
          5.3.5  面光源187
      5.4  环境属性188
          5.4.1  环境与背景189
          5.4.2  环境光吸收189
          5.4.3  环境光照192
          5.4.4  间接光照192
          5.4.5  迷雾与星辰193
          5.4.6  HDRI照明194
      5.5  色彩管理和线性工作流194
第6章  材质与贴图196
      6.1  着色器196
          6.1.1  材质的渲染原理196
          6.1.2  材质选项197
          6.1.3  多材质应用199
      6.2  着色器选项200
          6.2.1  漫反射着色器200
          6.2.2  高光着色器203
          6.2.3  渐变着色选项205
          6.2.4  光线追踪反射206
          6.2.5  光线追踪透明208
          6.2.6  子面散射着色器212
          6.2.7  体积着色器214
          6.2.8  光晕着色器216
          6.2.9  顶点着色器217
      6.3  纹理贴图218
          6.3.1  通用贴图参数219
          6.3.2  映射输入222
          6.3.3  通道输出226
      6.4  UV贴图229
          6.4.1  UV坐标系229
          6.4.2  UV解算和图层管理230
          6.4.3  UV编辑器233
          6.4.4  贴图绘制模式237
          6.4.5  网格UV拆分实例239
第7章  渲染241
      7.1  渲染设置241
          7.1.1  着色选项242
          7.1.2  规格选项243
          7.1.3  运动模糊选项245
          7.1.4  抗锯齿245
          7.1.5  烘焙246
          7.1.6  命令行渲染248
      7.2  输出设置250
          7.2.1  格式选项250
          7.2.2  性能选项252
          7.2.3  后期合成选项253
          7.2.4  标记选项254
      7.3  层输出属性254
          7.3.1  分层渲染254
          7.3.2  通道输出258
      7.4  摄像机262
          7.4.1  显示面板263
          7.4.2  镜头面板263
      7.5  网络渲染264
          7.5.1  渲染农场264
          7.5.2  服务器端266
          7.5.3  负载端267
          7.5.4  工作站端267
          7.5.5  搭建实例267
      7.6  如何提升渲染的性能270
          7.6.1  工作环境270
          7.6.2  工程配置270
第二部分  高级篇
第8章  动画工具275
      8.1  基本动画工具275
          8.1.1  曲线编辑器275
          8.1.2  创建关键帧276
          8.1.3  编辑曲线277
          8.1.4  通道管理279
          8.1.5  时间轴279
      8.2  物体动画280
          8.2.1  关键帧动画280
          8.2.2  路径动画281
      8.3  形变动画283
          8.3.1  形变关键帧283
          8.3.2  形变驱动器286
          8.3.3  晶格形变287
          8.3.4  钩镰形变289
      8.4  骨骼系统289
          8.4.1  编辑模式290
          8.4.2  姿势模式292
          8.4.3  骨骼物体数据选项293
          8.4.4  骨头选项296
      8.5  骨骼动画299
          8.5.1  动作编辑器299
          8.5.2  非线性编辑器299
      8.6  约束控制300
          8.6.1  变形约束300
          8.6.2  跟随约束305
          8.6.3  关系约束311
第9章  物理特效与仿真315
      9.1  粒子仿真系统315
          9.1.1  粒子系统316
          9.1.2  发射器选项317
          9.1.3  物理效果选项319
          9.1.4  可视化选项325
          9.1.5  渲染选项325
          9.1.6  速率控制选项330
          9.1.7  旋转控制选项331
          9.1.8  子粒子系统选项331
          9.1.9  毛发选项334
      9.2  烟雾仿真系统338
          9.2.1  烟雾域选项339
          9.2.2  烟雾发射体选项339
          9.2.3  碰撞与障碍选项340
          9.2.4  烟雾渲染选项341
      9.3  软体仿真系统342
          9.3.1  软体工作原理342
          9.3.2  软体的外部作用力343
          9.3.3  软体的碰撞计算345
          9.3.4  软体的内部作用力347
      9.4  布料仿真系统351
          9.4.1  布料初始化351
          9.4.2  布料碰撞选项352
          9.4.3  布料硬度控制选项353
          9.4.4  外力场选项353
          9.4.5  烘焙选项355
      9.5  流体仿真系统355
          9.5.1  流体原理356
          9.5.2  流体域设置356
          9.5.3  流体设置359
          9.5.4  交互控制361
          9.5.5  流体仿真优化363
      9.6  刚体仿真系统364
          9.6.1  Bullet引擎简介364
          9.6.2  环境配置365
          9.6.3  物理选项365
          9.6.4  仿真与记录366
第10章  后期合成368
      10.1  结点系统368
          10.1.1  结点编辑器368
          10.1.2  结点基础370
      10.2  着色器结点模式372
          10.2.1  输入类结点372
          10.2.2  输出类结点376
          10.2.3  色彩类结点376
          10.2.4  矢量类结点386
          10.2.5  转换类结点388
      10.3  纹理类结点393
          10.3.1  输入类结点393
          10.3.2  输出类结点395
          10.3.3  色彩类结点395
          10.3.4  图案类结点395
          10.3.5  内置纹理结点396
          10.3.6  转换类结点397
          10.3.7  扭曲类结点397
      10.4  合成类结点398
          10.4.1  输入类结点398
          10.4.2  输出类结点399
          10.4.3  色彩类结点400
          10.4.4  矢量类结点404
          10.4.5  滤镜类结点405
          10.4.6  转换类结点409
          10.4.7  影像类结点411
          10.4.8  变形类结点414
      10.5  视频序列编辑器415
          10.5.1  序列编辑器界面415
          10.5.2  序列编辑418
          10.5.3  特效419
          10.5.4  序列输出421
第11章  Python脚本扩展422
      11.1  Python脚本基础422
          11.1.1  Python简介422
          11.1.2  编辑与编译423
      11.2  Blender的Python API424
          11.2.1  API基础424
          11.2.2  事件查看425
          11.2.3  数据访问425
          11.2.4  操作符426
          11.2.5  正文429
          11.2.6  类型432
          11.2.7  集成433
      11.3  内置脚本437
          11.3.1  插件脚本437
          11.3.2  安装插件脚本438
          11.3.3  齿轮生成脚本438
          11.3.4  云生成脚本439
      11.4  外置程序脚本441
          11.4.1  YafaRay441
          11.4.2  LuxRender442
          11.4.3  Indigo443
          11.4.4  VRay443
          11.4.5  SunFlow444
          11.4.6  Octane445
第12章  游戏引擎446
      12.1  BGE开发环境446
          12.1.1  BGE系统447
          12.1.2  GLSL高阶着色器448
          12.1.3  逻辑编辑器450
          12.1.4  Hello Game!451
      12.2  物理属性455
          12.2.1  无碰撞类456
          12.2.2  静态类456
          12.2.3  动态类456
          12.2.4  刚体类458
          12.2.5  软体类458
          12.2.6  闭塞类459
          12.2.7  触发类461
      12.3  触发器463
          12.3.1  触发器结构463
          12.3.2  常用触发器465
      12.4  控制器466
          12.4.1  控制器逻辑466
          12.4.2  Python逻辑控制器467
      12.5  促动器469
          12.5.1  运动促动器469
          12.5.2  曲线动画促动器470
          12.5.3  场景促动器470
          12.5.4  编辑促动器471
          12.5.5  镜头促动器471
          12.5.6  声效促动器471
      12.6  游戏开发与性能优化472
          12.6.1  建模472
          12.6.2  材质与贴图472
          12.6.3  灯光473
          12.6.4  物理与逻辑474
          12.6.5  Python程序代码474
第三部分  实例篇
第13章  汽车建模与机械绑定477
      13.1  准备与分析477
          13.1.1  添加背景参考图477
          13.1.2  分析建模思路479
      13.2  车头建模480
          13.2.1  使用镜像修改器代替对称建模480
          13.2.2  制作车头部分481
      13.3  车身建模489
          13.3.1  车身布线思路489
          13.3.2  车身建模490
          13.3.3  车窗建模496
      13.4  附件建模497
          13.4.1  挤压厚度497
          13.4.2  制作车头护栏498
          13.4.3  制作车灯500
          13.4.4  制作车头网格护栏502
          13.4.5  制作车门把手504
          13.4.6  制作后视镜505
      13.5  车轮建模506
          13.5.1  制作轮毂506
          13.5.2  利用修改器制作轮毂镜像509
          13.5.3  制作轮胎511
      13.6  硬边处理513
          13.6.1  使用切割细分来制作硬边513
          13.6.2  折痕工具制作硬边515
      13.7  车轮机械约束设计517
      13.8  材质设计518
      13.9  灯光设计521
      13.10  环境设置522
      13.11  渲染与后期523
      13.12  本章小结525
第14章  角色模型制作526
      14.1  造型与布线基础526
          14.1.1  面部造型基础526
          14.1.2  布线基础527
      14.2  人物建模528
          14.2.1  建立参考图528
          14.2.2  面部建模529
          14.2.3  耳朵建模533
          14.2.4  细分优化534
      14.3  头骨建模535
          14.3.1  制作面部缺陷效果535
          14.3.2  制作口腔结构538
          14.3.3  制作眼球控制器540
      14.4  拆分UV542
      14.5  模型雕刻544
      14.6  烘焙贴图547
      14.7  映射绘制549
      14.8  毛发制作553
      14.9  着色器设计555
      14.10  灯光与环境设置557
          14.10.1  三点式照明原理557
          14.10.2  设计场景灯光和环境557
      14.11  结点合成559
      14.12  本章小结565
第15章  室内效果图应用567
      15.1  场景建模567
          15.1.1  制作桌子567
          15.1.2  制作椅子569
          15.1.3  制作衣柜和相框572
          15.1.4  制作地板和墙体574
      15.2  Yaf(a)ray的安装与配置578
      15.3  材质与贴图578
          15.3.1  着色器579
          15.3.2  纹理贴图与通道映射584
          15.3.3  设计场景材质586
      15.4  灯光和镜头587
          15.4.1  灯光参数588
          15.4.2  镜头参数590
          15.4.3  设计场景灯光与镜头592
      15.5  照明模式和渲染设置594
          15.5.1  照明模式594
          15.5.2  照明的常规参数600
          15.5.3  场景渲染设置606
      15.6  后期处理607
      15.7  本章小结608
第16章  角色动画610
      16.1  角色模型制作610
          16.1.1  头部与身体建模610
          16.1.2  手臂建模611
          16.1.3  腿部建模612
      16.2  骨骼设计613
          16.2.1  制作骨骼框架614
          16.2.2  制作骨骼约束617
          16.2.3  绑定模型与骨骼630
      16.3  制作步行动画631
          16.3.1  关键帧动画基础631
          16.3.2  制作关键帧动画632
      16.4  制作非线性动画637
      16.5  本章小结638
附录A  Blender大事记639
附录B  Blender默认快捷键641

第一部分 基础篇 Top

    Blender本身的开发就是建立在和使用者密切沟通的基础之上,目的就是为了提高使用者的工作效率。与其他3D应用软件不同,Blender的界面和用户体验十分特殊,熟悉其他3D软件的用户在刚开始接触Blender时,可能都会感到比较难以接受这种工作方式。但是一旦接受了这种模式,那么对今后的项目将颇有裨益。
    另外,Blender区别于其他3D软件的一点就是,它建立了很多全新的概念,例如引进了光标的概念、全新的物体和功能调用模式以及内部数据的RNA链接存储结构等。本篇将从用户界面和基本操作两方面开始,带领读者熟悉Blender的一些基础概念和操作方式,并分别从建模、修改器、灯光、材质和渲染等几个方面,简介使用Blender制作3D的入门知识和基本使用技巧。
    第1章  Blender概述
    第2章  基本操作与界面
    第3章  建模
    第4章  修改器
    第5章  灯光
    第6章  材质与贴图
    第7章  渲染

第1章 Blender概述 1.1 开源简介 Top

      大多数的商业软件协议都规定,用户只被允许在单一的计算机上安装并运行该软件,并且不允许制作任何拷贝,同时用户也根本无法接触到源代码。但是如果是一款开源的自由软件,用户就完全不需要购买或者申请获取正版的授权。

 

1.1.1  Blender是什么
      与一些十分昂贵、动辄数千美元的商业3D软件相比,Blender是一款完全免费而且开源的3D制作软件。Blender使用了GNU通用公共许可证(GPL)的授权,用户可以随意下载并可在多台计算机上运行,只需要同意并遵守自由软件基金会制定的开源协议即可。还可以下载Blender的源代码,对程序进行修改,将它应用于各种领域,也可以在改进程序后发布自己的版本,但是需要随版本提供一份GPL的拷贝,以保证程序接受者可以了解此协议下的权利。
      作为一款应用软件,Blender集成了用于制作各种3D内容的工具套件,包括建模、渲染、动画、后期处理、游戏制作以及跨平台3D交互制作等全方面的功能。因此对于不同的商业用户和个人艺术家,Blender不仅可用于创建3D形象展示以及影视级视频,还可以结合实时3D引擎来创造可独立使用的三维游戏。
    Blender在过去10年中的发展十分迅速,它以强大的功能,加上开源和跨平台的性能,让全世界范围内越来越多的人都开始关注它,并成为它的用户。

 

 

1.1.2  Blender的发展与历史
    1988年,Ton Roosendaal与他人合伙创立了动画工作室NeoGeo。NeoGeo很快便成为了荷兰最大的3D动画工作室,也是欧洲领先的动画工坊之一。在NeoGeo内部,Ton任艺术总监负责内部软件的开发,经过仔细考虑后,Ton认为当时NeoGeo使用的inhouse 3D工具过于陈旧,而且不易于维护和升级。于是在1995年时,Ton带着他的开发团队开始重写这套系统,并且最终成就了我们今天所熟悉的Blender。感谢你,Ton Roosendaal!
    在NeoGeo继续完善和改进Blender时,Ton认为可以向NeoGeo以外的其他艺术家发布Blender,以便能获得更多的软件使用反馈。1998年,Ton决定成立一个名为Not a Number(NaN)的新公司,并作为NeoGeo的子公司用于拓展市场,以及维持Blender的后续开发。NaN的商业模式主要包括:提供商业产品以及与Blender相关的服务,为公共计算机研究领域提供专业水平的动画和建模服务等。NaN的核心目标就是要创建一个小巧而免费的跨平台3D制作套件,这在当时绝对是一个革命性的观念!Ton和他的工作室,如图1-1所示。


                                                           图1-1  Ton和他的Blender Institute开源项目工作室
为了更广泛地推广Blender,NaN在1999年首次出席了Siggraph会议。Blender的这次参与取得了巨大的成功,大量的出版商和会议出席者都对它表示了强烈的兴趣。Blender因此红极一时,它的巨大潜力已经显现!借助于这次Siggraph会议,NaN在2000年早期便获得了450万欧元的风险投资。这笔投资使得NaN能迅速地扩展其业务,不久便在世界范围内拥有了至少50名雇员,为改进并增强Blender而工作。图1-2为2009年Siggraph上Blender的展台。


                                                                                图1-2  2009年Siggraph上Blender的展台
2000年夏天,Blender发布了2.0版,这个版本增加了一个集成的游戏引擎。到2000年年底,NaN网站上的注册用户数量已经增加到了25万。2001年4月,NaN在新的投资商资助下又建立了一个更小规模的公司,并在6个月之后推出了其第一个商业软件产品Blender Publisher,这一产品定位于独特的Web交互式3D媒体市场。但不幸的是,NaN的雄心和机遇并不符合公司的能力和当时的市场。由于产品令人失望的销售业绩以及持续艰难的经济形势,新的投资方决定停止一切对NaN的资助,这一决定也包括中断Blender的开发。
    尽管此时的Blender还存在明显的缺陷,但它已拥有了一套完整的内部软件体系,以及尚不完善的特性和一个用于提供GUI的非标准模式。考虑到来自用户团体和过去购买了Blender Publisher客户的热心支持,Ton觉得不应该让Blender就此被逐渐遗忘。鉴于重新建立一个拥有足够数量开发团队的公司不太可行,于是Ton在2002年底决定成立一个非盈利组织——Blender基金会。
    Blender基金会的主要目标是寻找一种可以继续开发,并且能促进Blender成为基于社区开源项目的方式。2002年7月,Ton设法使NaN投资者们同意这个单独的Blender基金会计划,以便为Blender开源。这一“自由的Blender”之战致力于筹集10万欧元,则基金会可以从NaN的投资者们那里买下Blender源代码的所有权和知识产权,随后就可以将Blender发布给开源社区。让每一个人都感到惊喜的是,通过一群热情的志愿者(其中还有NaN的前雇员),基金会只在短短的7周时间里就达到了10万欧元的目标!
    终于,在2002年10月13日,Blender在GNU通用公共许可证(GPL)下向全世界正式发布了!Blender的开发从这一天又开始了,推动这一项目的是来自广泛分布于全世界、全心全意的志愿者们,以及Blender的最初创造者——Ton Roosendaal。
    2004年,Blender被首次应用于影视特效,《Spider Man II》是首部用Blender制作电脑动画部分的电影,如图1-3所示。评论界一致认为,与其他用昂贵的制作软件如3ds MAX制作的影片相比,这部电影的动作特效毫不逊色。


                                                                          图1-3  Blender参与制作的电影《Spider Man II》
2006年,世界上第一部开源动画电影《Elephants Dream》在耗时3年之后随新版Blender一同推出,并斩获大奖无数,该片也被评为当年CG行业最具贡献之作。2008年,基金会又推出了第二部开源动画电影《Big Buck Bunny》,同步发行的新版Blender以其优化的粒子和毛发效果让人惊叹。Blender也被评为当年十大Animation/ VFX工具之一。2009年上映的好莱坞电影《2012》更是应用了Blender中的Bullet套件来模拟电影中大部分的烟雾物理特效,获得了令人惊叹的效果,如图1-4所示。2010年获得奥斯卡提名的动画长片《The Secret of Kells》,则使用Blender完成了部分2D制作,以及片中全部的3D特效。


                                                                     图1-4  使用Bullet制作物理特效的电影《2012》
2009年,新版本的2.5测试版正式推出,这次Blender再一次重写了软件的数据结构和用户界面等重要部分,并提供了更多的功能和改进的物理特效。2010年10月,基金会的第三部开源动画电影《Sintel》正式上映,再次获得了巨大成功,同时改进后的2.56版也随电影同步推出。

 

1.1.3  社区支持
      开源后的Blender在各国受到众多的追捧,并因此获得了迅猛的发展。它拥有全球最多的开发志愿者为其贡献代码和Bug维护。从2002年至今,Blender源代码更新已超过35000次,更新统计示意图如图1-5所示。不仅仅是个人,Google和微软等企业的开源研发部门也参与进来,并为Blender在Windows等多平台上的用户体验开发作出贡献。


                                                                                                             图1-5  Blender的SVN更新统计
从1995年至今,基金会平均每两个月都会发布一次小版本号的更新升级,每次升级不仅包括了缺陷修复,还会不断地部署更多的新功能。如果希望查看每一次版本的更新细节,请参考官方网站的版本发布记录。
      作为开发者,可以登录Blender Foundation Site开发者社区。这里有所有正在开发中的功能项目列表,你可以直接从SVN服务器上下载全部的源代码和开发者文档。社区论坛还提供了开发中的常见问题解惑,以及Python脚本和API等文档更新,当然,论坛中还有供代码贡献者使用的头脑风暴讨论区。代码的开发和正式部署完全在Blender创始者Ton的监督下进行,核心开发团队会维护代码的质量和标准。Blender Foundation也会定期参与Google’s Summer of Code等项目计划,在那里众多年轻的开发者都会参与进来,为Blender奉献更多最新的功能代码。图1-6为Blend SVN主要代码贡献者示意图。


                                                                                    图1-6  Blender SVN主要代码贡献者示意图
不论是开发者还是使用者,都可以登录Blender Artists艺术家社区,在这里发布制作中的或已完成的作品,与来自全球各地的艺术家、游戏开发者和Blender爱好者们讨论交流。作为全球最大的Blender用户论坛,这里每天都会有上千条更新和回复,通过交流获得反馈是使参与者快速成长和进步的方法之一。在这还能找到大量丰富而全面的Blender免费教程和资源,这里人人都是老师,多参与讨论与提问、互相帮助、共同进步才是开源精神的真谛。
      中文用户可以登录BlenderCN中文论坛,它是全球唯一认证的Blender官方中文论坛,这里提供了较全面的中文资料和汉化在线支持。
      在线讨论也可以为你提供及时的信息反馈,登录irc.feenode.net上的IRC聊天室,选择进入感兴趣的Blender频道,即可与来自不同国家的Blender爱好者们一起参与在线交流,如图1-7所示,以下是聊天室的部分分类:
      #blender可参与软件使用的相关讨论。
      #blenderqa提供答疑。
      #gameblender是为游戏开发者提供的交流平台。
      #blendercoders是开发者的常用讨论区。
      #blenderpython提供Python的API解疑和脚本开发交流。
      #blenderwiki是Wiki志愿者的讨论区。
      #blendercn是Blender CN中文在线讨论区。


                                                                                                       图1-7  IRC上的部分Blender频道

 

1.2 使用Blender的艺术家们 Top

    全球众多优秀的艺术家已使用Blender创作了很多优秀的经典作品,不少教育工作者也在不断为Blender提供大量教程和培训机会。在撰写本书的过程中,作者特意邀请了部分知名艺术家,请他们谈谈对Blender的认识,并为广大的读者解答许多新手入门时都会遇到的问题,以及一些关于他们与Blender之间的有趣故事。

 

1.2.1  Andrew Price

    2009年,Andrew在澳大利亚创办了BlenderGuru网站,并提供免费的Blender在线教程。在短短的一年时间内,BlenderGuru就实现了单日平均点击率超过5000次,并有4000多个邮箱订阅了其每日的更新,Andrew在Facebook上也拥有一个4000多人的强大粉丝团,Twitter上的追随者也超过了1000人,BlenderGuru已成为了世界上最专业的Blender在线教育基地之一。因为他为Blender在线教育所做的贡献,他被邀请参加了2009年和2010年的Blender年会,发表了与培训和教育相关的重要演讲。2010年Andrew撰写了Blender高级应用教程《The WOW FACTOR》系列丛书,并获得了极畅销的销量纪录,如图1-8所示。作为一名资深的培训师,Andrew为我们写道:

    大家经常会在网上看到一些类似这样的讨论:世界上最好的3D软件是哪一款呢?这真的是一个十分常见的争论,而且直到今天还有不少朋友在向我询问着同样的问题。我对这个问题的看法是:其实软件只是一门工具,只有艺术本身才能造就它的伟大!

    不过大部分人在听完我的答复后,通常用两种方式来回应我,要么抛来不屑的眼神,要么就干脆直接转身走开。但问题是,很多初学者都会步入这样的一个误区,那就是:如果我想要制作一款好莱坞级别的特效,即使这需要花费大量的资金,也一定要去配置一套最顶级的软件甚至硬件!但是事实真的是这样的吗?假如你将一支十分昂贵的画笔交给一位一点绘画经验都没有的人,你能指望他可以在一夜之间画出一幅像蒙娜丽莎这样的世界名作吗?显然这完全就是不可能的!所以同样的道理,请你也不要将对作品的期望太多地依赖于一款软件的优劣上。

    图1-8  《The WOW FACTOR》

事实上,Blender并没有完全进入工业级别的应用领域,这也确实是实话。但是这并不代表这款软件还不够优秀,而是因为在大型的公司或者工作室的生产制作中,他们对软件的需求不仅仅是软件本身的功能,还需要相关功能的技术支持以及网络渲染等服务,而这些是开源免费的Blender还暂时无法提供的。但是大部分这些类似的功能和初学者都是不相关的,所以请相信我,如果你是一名刚入门的3D爱好者,那么Blender将足以提供和所有大型软件同样的基本功能和学习条件。

    因此,在我看来,Blender特别适合初学者。而且它的部分功能与一些大型软件相比,在某些方面还具有很强的竞争性,特别是工作流程和界面设计等最具特色的部分。还有更重要的一点,那就是它是完全免费的!如果你希望在结束基础知识学习后,转向学习并使用其他的软件,没有任何问题,因为Blender已经帮你完成了所有基本功的练习,使你可以很轻松地接受其他3D软件的学习和使用方式。

    所以最后,我真心地希望你们能在不断地探索中去学好Blender。可能刚开始你会遇到一些困难,但是只要你能有耐心并且坚持不懈,就一定可以渡过难关!加油!

    图1-9为Andrew的代表作品《Remembering the Past》。

    图1-9  Remembering the Past

 

1.2.2  Anna Celarek

    Anna是一位年轻的波兰艺术家,现居住在美丽的维也纳。热爱艺术的她自学成材,早期一直使用3ds Max为主要工具,现在已完全改用Blender来制作她的所有作品。图1-10、图1-11、图1-12为Anna的部分代表作品。当我和她谈到为何会转向使用Blender时,  图1-10  Snake and Mouse她说道:

    在讨论为什么我会喜欢上Blender,并一直坚持使用它作为我的主要工具之前,我想先谈谈以前用过的一些其他软件。

    我第一次接触数字艺术的时候才15岁,我学习的第一款3D软件是Auto CAD。它可以让我随意地移动画面上的物体,并且还能执行一些基本的布尔运算操作,比起系统自带的绘图工具强多了,而且对于一个什么都不懂的小姑娘来说,这真的是太酷了!

    刚开始的时候,我曾尝试去创造一些怪兽之类的角色,但是呢,AutoCAD真的不是做这些玩意的理想工具,实际上它更适合那些工程师和建筑设计师们。可是我依然乐此不疲地去学习它,虽然当时还只能画出一些蹩脚的小动物、外星人或者飞龙等。我当时的想法就是,一定要掌握好这个软件,并且重新塑造这些小怪兽们!

    不过接下来我发现了3ds MAX,哇,它炫丽而丰富的功能简直太棒了,在和AutoCAD进行了简单对比后,我便全身心地投入到了3ds MAX的学习中。差不多在接下来的一年时间里,我都在学习网格建模法,这种方法给了我十分灵活的空间来创建生物体模型,甚至到现在我都一直保持着这种建模习惯。

    当然这期间也有不少事情困扰着我,其中一件事就是我常常需要花费数小时的时间,去调整分解后的UV展开图,无数乱跳的顶点让我十分头疼。在寻找解决方法时,我幸运地发现了Blender,它的解算能力真的很强大,同样的工作在Blender下只需要3秒钟就搞定了,我当时就震惊了!

    在后来很长的一段时间中,我都只是借助Blender来帮助我完成UV的解算工作,直到有一天我决定开始尝试去制作我的第一部“大型”动画片(其实这个动画只有1分钟,但是对于初学者来说,这已经算是一个不小的项目了)。这部动画是为了参加当年由CGTALK举办的一届动画大赛,题目为“诡异的行为”,而我的想法是制作一部有关猫和老鼠的小动画。

    但是在制作的过程中我又发现,在3ds MAX下制作骨骼和绘制权重真的很痛苦,不仅顶点在不停地乱跳,权重笔刷还难以控制,而且更糟糕的是镜像功能,它只能在猫咪身体上的一个小范围区域内有效,其余位置上完全不听使唤。我不知道错在哪,但是当这种煎熬达到忍无可忍的时候,我决定换一个软件试试。Blender这次没有辜负我的希望,它成功地揽下了这项工作。Blender的权重绘制十分灵活,镜像功能也相当高效,所有的操作都如此简单,困扰了我好几个月的骨骼问题只花费了几分钟就完全搞定了,而我仅仅只是单击了3次鼠标!于是在剩下的动画制作中我决定完全采用Blender,并且我又发现了它很多实用的功能,例如用于后期合成和材质制作的结点系统,以及集成的视频编辑系统。这时我才发现,Blender真的很棒!

    图1-11  Cat in Tree

就在我制作这部动画的同时,Blender又更新了好几个动画功能,例如改进的毛发梳理系统、更快更高质量的内置渲染器、SSS着色器、全新的雕刻功能、快速的AO计算以及强大的骨骼系统。这其中我最钟爱的工具,当属Grease Pencil绘制工具了,它使我可以更轻松地在镜头视角下完成动作设计。

    这就是我与Blender结缘的故事,我现在也一直在坚持使用它。与此同时我还发现,它的开发人员一直持续地专注于工具的改进和更新,而且我也从来没有见过哪一款软件能有如此快的更新速度。我想许多软件公司想的肯定都是赚钱,因此他们更愿意频繁地更新版本号来迫使用户付费升级,而不是去用心地更新软件本身。相比而言,Blender的开发者却更专注于做好这个软件,使更多的新概念得以实现,让更多的实在功能可以得到部署。虽然有时觉得这么多的功能绑在一起有点混乱和繁杂,但是如此快的开发进度还真是让人感到十分兴奋。Blender在各方面都在赶超其他3D软件,当然并不是全面胜出,可是我相信如果开发者能保持这样的更新速度,那么过几年后咱们走着瞧吧!

    图1-12  Freddie the Hen

从2007年底,开发者们就开始着手重写整个代码核心和用户界面,并命名为“2.5计划”。不断推出的测试版也拥有了更多的新功能,并修复了大量的错误和缺陷。现在我已经开始使用新的2.5版来制作下一个新项目,讲的是一只大脚穿山甲的故事,相信不少的中国朋友都很熟悉这种小可爱吧。即使现在使用的还只是测试版,但是我已经能感受到许多全新的强大功能,例如我可以直接使用第三方软件来制作贴图的Project Paint映射绘制,我用它完成了穿山甲的全部贴图制作,同时新的雕刻功能和间接光照也为人物和场景帮了不少忙。我期待着不久将要发布的更稳定的新版本!

    对于刚接触Blender的朋友,我真心地祝福你们能和我一样,可以在学习Blender的过程中享受轻松和快乐,借用星球大战的名言:愿顺从的顶点与你同在!

 

1.2.3  Barath Endre

    Barath是一名优秀的匈牙利游戏设计师和图形工程师,他使用Blender为主要的游戏制作工具,代表游戏作品包括《Black Noise Engine》和《Ignite Racing Game》,同时他的个人动画《A Very Little Warrior》也荣获了2010年Suzanne最佳原创动画奖,如图1-13所示。

    图1-13  A Very Little Warrior

当我开始尝试学习3D的时候,用的是3ds MAX和Maya这些超级强大的专业软件,当然它们的个头也很大。但是在我不断地尝试和努力后,却还是没能学会,因为我没法用它们来理解3D的真谛。后来,在我接触了Blender之后,只花了3到4天的功夫,就能学会做一些简单的3D模型了,这给了我极大的鼓舞和成就感。

    Blender是一款逻辑性非常强的软件,比如建模,你可以直接对任何一个点线面结构进行非常直观的修改,而对比其他的软件,要实现同样快速的操作基本是不现实的,因为它们都太复杂了,光点线面的修改就需要调节大量的参数。而Blender则通过最简单的过程教会了我3D里面最重要的基础理论,那就是两点相连为一条直线,一点和一线能组成一个三角形。可能你们会觉得这个理论太初级了,但我确实是从学习这些基础理论开始一步步走过来的,而我当时也需要去理解这些最基础的东西,Blender因此而成为了我学习3D的一根救命稻草。

  

1.2.4  Ben Dansie

    Ben是一位来自澳大利亚的数字艺术家,他专注于建模和材质设计。从能握住画笔的那一刻起,他便开始了绘画的学习,扎实而深厚的传统艺术功底给了他极强的3D领悟能力和表现力。现在他已经完全转向使用数字技术为主要的创作平台。Ben还和另外两位艺术家Jonathan Williamson和Jean Sebastian Guillemette共同创建了Montage Studio,用于提供免费的Blender教学视频。他们制作的教程现在已被大量转载于CG Tuts、PACKT和CG Cookie等知名的在线教育培训网站上。2010年,Ben受邀加入了Durian团队,参与了电影《Sintel》的材质与灯光制作。图1-14和图1-15为Ben的代表作品。

    图1-14  《Sintel》剧照:龙血之树

图1-15  Steam Punk Mousetrap

接触Blender还是在我上高中的时候,那时只是在网上看了一些简单的教程,我也没能很好地去理解和学习它。几年后我进入了大学,有机会可以接触大量的3D制作软件,这时我决定好好地尝试并研究一下Blender。很明显,作为一名在校的学生,它也是我当时唯一能够负担得起的软件,因为它是完全免费的。虽然其他软件有着相当丰富的教学资源,但是我很清楚,至少在毕业前,我可没有那么多钱去购买这些如此昂贵的商用软件。

    后来我几乎使用Blender完成了大学中的所有课程设计,它也逐渐成为了我最主要使用的工具之一。当然在将它完全固定为我的主要工具之前,我也在不断地对比市面上的其他软件,了解它们各自的特性和未来的发展趋势,同时也在衡量着自己的经济承受能力。这时Blender基金会正式开始制作世界上第一部开源电影《Elephants Dream》,我兴奋地查看着官方Blog中每天更新的工作进度,并且期待着寄来的DVD和全套生产源文件。当电影正式发布后,我开始认真地学习这部电影的整个制作流程。感谢基金会发布的源文件,我很快就从主角人物Prog身上掌握了大量的材质、纹理、骨骼绑定和UV解算等宝贵知识。Blender第一次让我体会到了开源与共享的学习优势。

    从此我开始经常去登录Blenderartists.org论坛,与社区中的朋友做在线交流,这更是让我学到了不少课本中无法获取的知识。逐渐的,我也能开始帮助他人解决问题了,这种互动使我可以不断地获得更多的信息反馈,并巩固自己以前所学的知识。感谢Blender的这个强大在线社区,它支撑了整个软件的进步和团队的发展,并且还吸引了大量的艺术家来这里分享和学习。同时,这样的在线讨论还为我带来了不少的自由职业收入,并且让我能有机会加入到Durian项目,参与电影《Sintel》的制作。

    自由与开源精神不仅吸引了艺术家,还为Blender带来了全球范围的众多开发志愿者。这些来自不同国家的天才工程师们为Blender贡献了大量的创新功能,他们抛弃了隔阂,共同分享着计算机图形领域的最新技术。我将会一直坚持使用Blender,同时我也希望本书能帮助你熟悉这款软件,解放你的思想,引领你共同踏进这片自由与创新的世界!

 

1.2.5  Colin Levy

    美国小伙子Colin虽然今年才22岁,但是已经成功地执导了Blender的第3部开源电影《Sintel》,如图1-16所示。他还在上小学5年级的时候就迷上了摄像技术,13岁时便制作了自己的第一部电影,在10年级的时候正式开始学习After Effect和Blender等CG特效软件,现就读于Savannah College of Art and Design的电视电影专业。

    图1-16  《Sintel》剧照:治疗

当我第一次打开Blender的时候,眼前的界面让我感到十分困惑。我花了好几个小时尝试着去做点什么,但是最后还是一头雾水,于是我决定直接退出程序,并将它从硬盘里完全删掉了。差不多在6个月之后,我才决定再去尝试一下。那时我已经浏览了许多优秀的Blender作品,想想如果那些家伙可以制作出这么精美的画面,我为什么不能?于是我耐心地重新开始,在认真学习了好几个星期的基础知识之后,我便深深地被这款功能强大的软件给迷住了!

    当你能正视它的能力并熟悉它的各项功能之后,Blender可以在你手中变得十分灵活而强大,你甚至可以用它来掌控一些复杂的大场景画面。但是作为一款时刻都在开发的软件,你必须要做好充分的准备去应对它随时做出的变化和更新,以及部分还未成熟的功能缺陷。幸运的是,对于《Sintel》这样的大型电影项目,我们能有一个开发团队可以全程配合我们的工作。Blender基金会制作开源电影的优势就在于,他们的代码人员可以随时帮助我们解决制作中遇到的困难与挑战,以及各位艺术家针对电影提出的新功能需求。

    我在工作中会经常使用Blender,不仅仅是制作3D的静帧画面,也常用它来完成2D动画。作为一名导演,我特别喜欢使用它来制作影片的预览画面,辅助我去挑选镜头的角度,并且将故事板上的内容制作成OpenGL渲染的简易动画,演示给我的同事和演员。这为我们节约了大量的时间去理解整个拍摄计划,特别是制作一些拥有后期视觉特效计划的画面。对于我来说,Blender特别适合完成这些类似的工作,因为它的操作十分灵活高效,允许我在片场就可以对很多画面做实时的调整。如果是拥有对话的画面,我则可以直接在VSE中剪辑整个对话,相当方便。

    Blender拥有一套十分强大的特效工具和合成系统,能够用于制作一些复杂的绚丽效果,我也常在自己的个人项目中应用这方面的工具。基金会的下一部电影项目被命名为“Mango”计划,它将专注于实现更多的特效画面。但是如果要将Blender用于制作好莱坞级别的电影特效,那么它的VFX特效相关工具还需要更多改进。幸运的是,基金会已经在着手这方面的开发了!艺术家兼开发人员Fracois Tarlier为Blender列了一个未来的“特效计划”目录,而其中部分目标已经在新的2.5版中得以实现!

    我相信你们在学习Blender之后,也一定能找到它最适合你工作的那一部分功能。我的下一部电影虽然使用的是真人实拍,但我已经借助Blender完成了所有的预览画面制作,并且计划在后期为影片添加一些特效。当然,我也更希望在未来可以再参与一部完全使用Blender的电影项目!

 

1.2.6  Enrico Valenza

    Enrico是一名来自意大利的自由职业插图设计师,同时也是一名Blender官方认证的培训师,他精通传统绘画,并长期为书籍杂志绘制插图和封面。2005年他凭借动画《New Penguoen》获得了Suzanne最佳动画和最佳原创剧本奖。2006年,他加入了开源电影《Elephants Dream》的团队,2007年又担任了开源电影《Big Buck Bunny》的美术指导。图1-17和图1-18为Enrico的代表作品。

    我第一次打开Blender还是在它2.23版本的时候,那时它还没有正式开源呢。和大部分人接触它的第一感觉相似:“嗯?一个灰色布满网格的画面,一个窗口面板,还有一个怪异的方框和几个圆圈,这到底是个什么玩意儿啊?”我尝试去寻找一些能给我提供使用方法的提示信息,但是事实上它很难让我看到常规软件中一些相似的影子。最后我决定退出并删掉它,几个月后我几乎忘掉了它的存在。

    图1-17  Allosaurus Fragilis

后来我决定再尝试的时候,无意中轻轻地滚动了一下鼠标中键,画面瞬间从普通的正交视图转换成了透视的立体视图,那几个怪异的方块和圆圈立刻转变成了一个立体的矩形和一盏灯光。嘿,这玩意看上去,好像也不是我想象中的那么神秘啦!

    Blender学习其实很轻松,只需要能参照一个完整的初级教程,就可以了解几乎所有的基础知识。并且它“怪异”的操作界面也并没有为我带来任何困难和麻烦,我反而能从中感受到更多自定义和个性化的用户体验,这些是除了Blender,在其他软件上完全无法体会到的。

    今天,我们已经正式进入了2.5版的时代,而拥有更多令人期待功能的2.6也计划在2011年发布。为了淘汰落后的技术,开发者们在新的2.5版本中完全重写了全部核心代码,使得这款最初计划仅针对于专业应用领域的3D软件,能持续拥有世界上最革新的技术以及最完善的功能。

    在我看来,除了开源与创新,Blender更伟大之处还在于,它始终在宣传一种积极向上的用户哲学,那就是它一直在努力为每一位用户都提供一个能踏进这门新兴数字艺术领域的机会,并创造了一个让人人都能去探索思维以及开发创新的公共应用平台。

    作为一名自由职业的插画家,我已经将Blender完全作为工作中的主要工具软件很多年了,同时它还促成了我和多家意大利本土工作室的合作,因为现在已经有越来越多的团队开始接受并着手实施这条新兴却足够成熟的开源生产线了。

    图1-18  Golden Planet

我很荣幸能获得Suzanne动画大奖,并且还加入到了开源Peach团队中,全程参与了电影《Big Buck Bunny》的制作。对于我来说,这真的是一段相当令人难忘的宝贵人生经历。感谢Blender给了我一个成为数字艺术家的职业机会,它使一个像我这样,最初只会使用笔刷和画布的传统平面画家,现在却能如此快速地进入3D产业,并利用最新的数字技术去实现自己对幻想的追求,让我的创意从此可以在“四维空间”中,也就是时间和空间中以全新的方式展现!

 

1.2.7  Kamil Kuklo

    波兰艺术家Kamil在2007年撰写了波兰的第一本Blender书籍《Blender.Kompendium》,并一举成为了当年的畅销  图1-19  15 Minutes of Glory书,同时也引发了波兰全国一股Blender学习的热潮。图1-19和图1-20为Kamil的代表作品。在谈到和Blender之间的故事时,Kamil说道:

    在我第一次接触Blender的10分钟内,数十个选项和下拉框几乎要让我绝望了,当然更谈不上任何3D图形学的用户体验。就这样我放弃了学习Blender,转而去尝试着学习其他类型的3D软件。但是因为某些原因,最后我还是重新转回了Blender,我想这也许是我人生中所做的最正确的一次重要决定吧。现在,我已经成为了一名能熟练使用Blender的3D艺术家,我有充分的信心告诉你,Blender是世界上最好的3D软件!

    我相信,通过这本书的学习,你可以很快掌握一套完整的项目制作流程。但是要想成为一名真正的Blender专家,还需要更多的耐心去多加练习。3D创作的迷人之处在于它涉及了多种领域,比如建模、后期制作、动画或者雕刻等,幸运的是,借助Blender的强大学习平台,你可以很轻松地将它们全部掌握。当然,在你完成自己的角色或场景作品时,唯一真正制约你的并不是软件本身,而是你的创意和想象力。希望你们借助这款强大的软件,能够在3D的世界中更加酣畅淋漓地享受学习和创作!

    图1-20  Nighthawks

 

1.2.8  Kevin Hays

    美国艺术家Kevin使用Blender来完成他的所有雕刻作品,电影《Sintel》中的大龙就出自他之手,如图1-21所示。图1-22为Kevin的代表作品Dragon Scale。对于Blender雕刻功能的学习,Kevin向初学者提出了几点建议。

    图1-21  《Sintel》剧照:Dragon Scale

如果你是一位新接触Blender的用户,我的第一条建议就是不要刚开始就雄心勃勃地尝试去做一个大型项目。这样的项目,会很容易使你在还未真正体验到渲染、灯光和合成所带来的乐趣时,就放弃掉学习了。

    相反地,我倒建议你可以去尝试一个两三天就可以搞定的小项目。这样你不仅可以在十分轻松的学习过程中体验到整个制作的流程,还能享受实现最后成果所带来的成就感。当然我并不是想劝说大家不要尝试大型项目,只是对于初学者,特别是完全没有3D基础的朋友,从基础的小项目开始才是学习的最佳途径。

    图1-22  Steampunk Nemean Lion

如果你是一位新入行的数字艺术家,我的建议是尽量多地收集其他艺术家的代表作品,即使这些振奋人心的作品并不都是用Blender完成的。我个人就非常喜欢去Zbrush的论坛以及其他数字艺术网站的画廊。一旦发现那些能真正打动我的作品,我就会立即把它们下载添加到我的参考图文件夹里面。在以后制作自己的作品时,我都会先把它们翻出来作为参考资料。当然我们不可能直接去照搬这些作品,但是它们确实能为我在创作的过程中提供大量必要的解剖、光影、灯光和配色等相关参考信息。

 

1.2.9  Mathias Helmuth Pedersen

    1990年才出生的丹麦小伙Mathias,却已经拥有了5年的自由职业艺术家生涯。他在10岁时便拥有了自己的第一台电脑,但并没有像同龄人一样去装上一大堆游戏,而是开始认真地学习数字艺术。通过不断的努力,他的Blender技术很快便在社区中得到了认可,并于2007年获得了Blender World Cup全球大赛冠军。图1-23和图1-24为Mathias的代表作品。在谈论Blender的同时,Mathias还向初学者提出了学习中的10点建议。

    图1-23  Starry Night

Blender是我最喜欢的软件,从刚开始接触到现在,都一直惊讶于这款开源软件的强大。我曾经错误地认为免费的玩意儿效果一般都不会太出众,但是Blender完全改变了我的这种观念。经过了几年的发展,今天Blender的强大已经让我感到十分震惊,感谢伟大的开源社区!

    图1-24  Tree of Life

当5年前我正式学习并使用Blender时,由于刚开始按照常规软件的学习思路,使得整个过程变得十分曲折和煎熬。但是当我开始逐渐掌握它之后,才意识它的不同之处,它带来的好处是使我的工作变得前所未有的高效!

    小时候选择学习Blender还有个很无奈的因素,就是我在当时根本无法负担购买大型软件的费用,而今年我已经19岁了,依靠Blender我成为了一名全职自由职业艺术家,并且靠它来支付我的所有经济花销。Blender不仅给了我实现创作3D梦想的机会,同时也给了我一个全新的职业生涯,没有它这一切都将无法成为可能。

    今天的Blender已拥有了大量的在几年前只能称为是梦想的功能,当然我也期待着能在未来看到更多的新功能。不同于几年前,Blender已经成为了一款真正的3D平台,同时开源社区中的志愿者还在不断地奉献并支持它的发展。我真心地希望你也能加入到这个团体,并成为其中的一员!

    对于初学Blender的朋友,我希望能借此机会将自己总结出来的几点学习经验分享给你们。

    1.准备好你的求知欲望和好奇心

    在正式开始学习之前,一定要充满对知识的渴望,并意欲主动地去发掘隐藏在Blender中的惊喜,而不是期待有谁会赐给你一本速成宝典。现在就立志开始学习吧!好奇心带来的动力能驱使你去主动地学习,这甚至可以让啃掉上千页Wiki文档的过程也能变得轻松起来。找出所有令你感兴趣的领域,并以此为方向,然后再投入100%的热情,准备开始学习吧!

    2.多请教搜索引擎

    这句话看似轻松,但是搜索引擎的确是你最好的老师,例如Google和Yahoo等。当你遇到某一个问题时,第一件事情就应该去登录它们并搜索问题的答案,同时尝试使用不同的关键词来查找结果。在大部分情况下,你的问题都可以通过搜索来解决,这比起向同伴发送求助邮件或者在论坛中发贴都要快得多,真的!

    3.尊重手册

    Blender的手册也就是官方提供的Wiki文档,可是很多人都会无视这套手册的存在,或者轻视它的重要性,并认为里面的内容对于一个初学者实在是太繁琐了。但是事实上,Wiki手册也是Blender最重要的一个组成部分,社区和基金会都花费了大量的时间和人力在Wiki的编写和维护工作上。可能刚开始就要啃掉这么大块的文档听上去很唬人,但是你只需要多花一点时间去认真地阅读它,就会发现里面其实蕴含着相当丰富而宝贵的学习资源。

    4.论坛也能搜索

    多去Blender Artists Forums等艺术家论坛上转转,上面拥有大量常见问题和对应解决方案的讨论,尝试着使用论坛工具栏中的搜索功能,去寻找和你类似的问题。你的问题肯定也会有其他初学者遇到过,特别是在新手区板块里,在这里搜索找到答案的几率也将会更大。尝试使用AND来组合多个关键词,这将会使你的搜索结果更准确。

    5.给自己立下一个现实的目标

    不要在刚开始就去尝试完成一个不切实际的项目,磨刀不误砍柴工,先耐心地巩固你的基础知识吧。最好是根据你目前的能力和水平,完成一个具有适当规模和难度的作品。大型却无法完成的工程学习,绝对顶不上一个小巧却可以成功实现的短期项目。要知道,独立完成一个真正的大型作品还需要很长的过程去学习和练习,所以请不要刚开始就眼高手低。

    6.坦然面对批评和意见

    把你的作品贴在论坛上,或者发在社区里,等待大家为你提出建设性的意见,这是促进你改进的又一个最佳方式。不要太溺爱你的这些早期作品,也不要因为大家的批评而灰心丧气,每个人的观点和视角都会不一样,这些恰好能从各个方面找出你现在的问题和缺点。当然也没必要为了这些评语就尝试去重新修改已经完成的作品,你要做的只是记住这些评论和观点,谦虚而坦然地接受所有的评价,然后在下一个项目中多加注意就是了。要知道,能有人真诚地指导你是一件非常令人感激的事情,而同时如果你能从这些评论中找到自己的问题,则更是一个十分令人兴奋的进步。

    7.正视竞争

    山外有山,人外有人,不要担心自己会落后于他人,也不要让这些去影响你的学习过程。嫉妒会让你感到难过甚至失落,你只需要享受你自己的学习过程,坚信自己的能力,真正的竞争对手其实只有你自己。

    8.观察和学习

    尝试着将你的视线从电脑屏幕上移开,回到真实的世界中,多去观察事物的本质,这能辅助你的创意与制作。万物是绚丽多姿的,它们都有着自己独特而美丽的一面。如果你想制作一支钢笔,那就去多观察一下真正的钢笔吧,或者在网上搜索一些参考图片。尝试以回归自然的方式进行创作,这能极大地提升你作品的艺术价值。

    9.享受Blender

    如果你现在还没有从学习中得到快乐,那真的是件糟糕的事情。放松你的心情,在快乐中学习,在学习中享受快乐,这样的心态可以让你事半功倍!

    10.学会与他人分享

    与他人分享你经验的过程,也是一种强化学习的过程。在这个过程中,你也会发现自己的知识在无形中得到了巩固和提升。当然,更重要的是这能够为他人提供很多帮助,让大家可以在你的经验提示中学习并获得领悟,就像我以上分享给你们的10点小经验一样。

 

1.2.10  Matt Ebb

    来自澳大利亚的Matt是一名自由艺术家,他曾担任电影《Elephants Dream》的美术指导,负责完成了影片中大量的视觉特效制作。Matt不仅是拥有深厚的艺术造诣的艺术家,同时也是一名优秀的软件程序工程师。2009年,他被Blender基金会雇佣为全职研发人员,专注于2.5的内核开发和功能改进。图1-25和图1-26为Matt的代表作品。

    刚开始接触Blender时,我还只是一名艺术设计专业的学生,那时我对3D制作十分感兴趣,并且希望能使用它来完成大学课程中的相关插图设计和网页项目。大学毕业后我正式成为了一名视觉设计师。我也曾经使用过一些商业软件,但是相比较而言,Blender是一款让我投资最少的软件,同时它特别适合像我这样的自由职业从业者,而且它完全足以胜任一些小型的专业项目制作。

    图1-25  Kajimba:Produced at Red Cartel(www.redcartel.com.au)

图1-26  Lighthouse:Produced at Red Cartel(www.redcartel.com.au)

2005年,我有幸能前往阿姆斯特丹,与Blender基金会合作完成了世界上的第一部开源电影《Elephants Dream》,这份工作经历极大地提升了我的CG技术,同时也鼓舞了我去全身心地投入到CG这门新兴的行业中。

    我现在已经将Blender作为主要CG制作工具很多年了,让我坚持使用它的一个主要原因,就是在小型的团队合作中,Blender可以让我很轻松地完成协作工作,并快速地解决项目需求,这一切都归功于Blender十分优秀的库管理模块。如果你需要实现这种类似的协作模式,我强烈建议你一定要去好好学习并利用这个功能。

    另外一个原因就是,Blender采用了一套全开源化的开发流程。首先,这提供了一个给你自定义开发的机会,当然前提是你需要知道如何去实现。当我越是热衷于Blender所带来的用户体验,就越有兴趣去尝试修改它的一些功能,并且希望将我在其他领域中期待的工具添加进去。在后来很长的一段时间里,我都自学着编程,并努力去改进Blender的内部工具,同时也开发了一些在我自己工作中所需要的新功能。

    其次,Blender相比其他软件的一个最大优势在于,你可以有机会参与到它的开发流程中,这和许多商业软件的封闭式开发模式完全不同。当然,和所有的软件一样,Blender也并不是十全十美的,但是开源是它在这个领域中最独有的特性。加入到Blender开发的方式不仅仅包括提交代码,还可以向开发人员提出更多的功能建议,为新的版本提交及时的反馈以及测试报告,将你找到的Bug上传至跟踪服务器,以及为初学者创作教程和学习资源等。

    而对于非开发人员,开源的优势也能为你带来更多的惊喜和帮助。我想对于很多人来说,能够亲手创作一幅3D艺术作品甚至一部小型动画片,都绝对是一件振奋人心的事情!开源的精神在于分享和奉献,作为一名艺术家,当你投入更多的精力去帮助整个社区时,反而能发现这其实能帮你更容易地熟悉软件中的所有功能细节。同时你在社区中的分享还能使你结识更多的朋友,你付出的越多,愿意为你提供回报和帮助的人也会越多。

    在真正的专业项目制作中,我们常会遇到一些软件无法胜任的情况,并且希望能尽快获得可以解决对应需求的新功能,来帮助我们完成工作中的特殊应用。这时我们只需要在社区中去寻找合适的开发人员,并和他们及时地沟通,通常情况下问题都能在1到2天内得到解决。如果你曾经投入了大量的时间参与到社区的交流中,人们就会熟知你并会感激你在过去为大家所做的贡献,所以大家都会很慷慨地向你提供各种类似的帮助和支持。有时在你真正需要帮助的时候,社区真的是一条很实用的寻求帮助的途径!

    无论是作为用户还是开发者,我都衷心地希望越来越多的中国朋友,能更积极地参与到这个逐步壮大的团体中来。在现在这个主要使用英文交流的社区中,我很少能看到中国社区成员的身影,但是我真的很期待。我相信借此机会,一定会有很多才华横溢的优秀中国艺术家和软件工程师能够了解Blender,我特别希望能有更多的中文程序员可以加入我们,来帮助我们解决一些由于部分开发人员不熟悉中文而暂时无法完成的开发问题,例如改进系统对中文字符的支持等。

    如果我能有幸为初学者提供一些建议的话,那么我希望你们能更积极地参与社区活动,这是一个可以让你结识更多朋友、接触更多新生事物的地方。我常看到不少初学者在社区中组织一些小型的在线比赛,例如速模竞赛等,这对于提高你的技巧、熟悉软件的操作是十分有帮助的。

    当我希望去学习一门新的工具时,我会为自己设计一个从来没有尝试过的小型项目,让我可以在完全未知的情况下去实现探索性的学习。如果你对Blender中的某一个功能不是很熟悉,那么就去尝试做一个一定会使用到当前功能的小项目,努力去完成它,不要因为对某一部分技术不熟悉而轻易地放弃,坚持从探索的过程中去体会学习的魅力。

    同时,不要在刚开始就雄心勃勃,也不要轻易地气馁。多去尝试一些新鲜的事物,用宽容的心态去面对自己以前犯下的错误,尝试将积累的经验融入到下一个项目中。我想如果你再回首自己早期的一些作品时,一定会想:如果让我再尝试一次的话,肯定会做得更好。如果你真的能这么想,那就说明你已经进步了!

    最后,在你正式开始自己的CG漫游之前,我希望你能为自己摆正一个良好的心态。无论你是不是已经开始学习Blender了(我相信你一定正乐在其中),在这个长期的过程中,一定要意识到工具并不是最重要的,你的内心和你的作品才是学习过程中的重点。不要试图将学习封闭在单纯的理论和书本中,多去户外体验一下真实的世界,尝试一些非数字技术的艺术,例如摄影或传统绘画,这些都能为你打开眼界,并且激活你的艺术灵感。Blender仅仅是一个工具,它在帮助你完成艺术创作的过程中,既能为你带来成就感,也会使你感受到挫折,因此不要太在意工具在你创作中所扮演的角色和它所实现的目的,最后的作品是否能传达你所希望表达的构思和创意,那才是艺术的真谛。

 

 1.2.11  Mike Pan

    加拿大籍华人Mike(潘辰)从2002年起就开始学习并使用Blender,他精通BGE游戏模块与实时特效开发,其作品已经被4本Blender书籍收录,同时还被作为演示程序在Siggraph大会上用于展示Blender的实时计算功能。他与Dalai Felinto合作的新书《Mastering Blender Game Engine》也将在2011年中旬正式出版。图1-27和图1-28是Mike的代表作品。

    图1-27  Mushroom

图1-28  Real-time Marine Ecosystem Visualization for UBC Fisheries Centre

你可能曾经听过说Blender这款3D软件,或者你正在寻找一本教程可以帮助你更深入地了解Blender,或者你就像我一样,在偶然发现这款软件之后,才意识到自己可以对某一件事物产生如此强烈的激情与动力。当然无论如何,都欢迎你开始使用并学习Blender!

    新的2.5版基于开发者与用户多年的沟通和交流,已经使其逐渐演变为一款更加简单易学、具有更高的工作效率、同时还能提供更高质量应用性能的3D软件。你可以是一名为客户制作效果展示图的室内设计师,可以是一名电影或短片的动画师,也可以是一名寻求快速生产模式的游戏开发工程师,无论你的需求是什么,Blender都能帮你快速地实现最终目标。

    8年前我开始学习Blender时,它还刚处于开源的初期,无论是学习资源还是相关的素材都少得可怜,得益于在线社区对我的帮助和鼓舞,使我可以在短时间内就快速地获得成长和进步。随着时间的推移,Blender的线上资源随着社区的壮大也在不断地增多,同时社区也在发展中得以稳固,并且依旧保持着热情友善的交流传统。

    作为第一本在中国大陆发行的中文版Blender教程,本书绝对树立了中文CG行业中一块崭新的里程碑,同时这本书也紧紧跟随着Blender为整个行业带来最重要的一次变革。在这几年前,要想在个人电脑上实现免费的好莱坞级别动画制作平台是几乎无法想象的。但是现在,由于Blender所带来的技术和软件创新,整个行业的应用得到了平衡。使得今天许多艺术家,包括我自己,都能随意使用一些曾经做梦都无法想象的工具。基金会最新发行的电影《Sintel》也向世人证实了Blender在工业生产中的应用实力。同时我们也得感谢互联网为Blender发展所做出的推动贡献,高速的网络传播途径使你和你的作品可以很快被发送至世界上的任意一个角落,分享变得从未有过的简单。

    希望本书能为有意踏入CG艺术行业的朋友,提供一条快捷的学习之路。

 

1.2.12  Pablo Vazquez

    Pablo来自阿根廷,是一名专注于Blender的自由职业艺术家,主持过开源游戏《Yo Frankie!》的开发,还出版了基金会的官方教程《Venom’s Lab!》,并参与了电影《Sintel》的制作。同时他也是一名官方认证的Blender培训专家,在全球多个城市举办过Blender相关的技术研讨会。图1-29是Pablo的代表作品。

    图1-29  Frakas Dream!

今年差不多是我使用Blender的第9年了,它不仅从一款免费软件发展至今的自由开源,也同时逐渐融入了我的生活。因为它和用户具有很强的亲和力,无论是使用邮件还是在Twitter上参与讨论,任何一种方式都可以让你直接或间接地去辅助这款软件的改进。我所说的改进不仅包括对软件本身的代码维护,也包括资源类的更新,例如出版教程书籍或DVD。我曾经花了很长的时间去适应这种新的思维,因为以前我始终认为大型的公司或团体一般都难以亲近,你也无法去期待能参与一款软件的发展和更新。但是Blender基金会和整个社区就像是一个小小的家庭,你不会再感受到封闭的隔阂,这里人人都很随和,互相聆听着彼此,善于沟通和交流。

    那么我们应该从哪里开始学习和使用Blender呢?当然是你最感兴趣的部分啦!很多人都会先学建模,因为后面的学习都需要有一个基础的模型。我刚开始也是从一个最简单的模型开始,做了一个“大屁股机器人”,没有去过分追求模型的细节,因为我不希望在刚开始就让前期的建模制作耽误我大量的时间。接下来我开始考虑学习材质和贴图等基础知识,在熟悉了基本流程后,我就进入了我最爱的动画学习。幸运的是,这时我得到了一份工作,虽然不是制作动画,但是却让我可以正式开始在真正的实践中去运用Blender了!

    这是一部有关阿根廷的纪录片,我很庆幸通过这个项目熟悉了Blender的大部分基础知识,以及各类制作流程。这份宝贵的经验使我在接下来的2008年,可以有幸加入《Yo Frankie!》制作团队,并在2009年推出了我的第一部培训DVD《Venom’s Lab!》。在得到了Ton的认可后,他邀请我加入了《Sintel》电影的制作。同时在Blender开源工作室的这段时间里,我也有幸能在欧洲参加了大量的技术交流研讨会。现在我专注于渲染与特效,只在空余的时间里做一些角色设计等最基础的绘画工作。虽然我现在的主要工作是后期合成,但是我还是不希望让自己的绘画技术生疏,因为传统的美术功底可以让你保持对艺术的敏锐度,而技术只需要多加练习就可以了。

    所以,学习是无止境的,同时学习也是不能停止的!充分利用你能找到的所有教育资源,在学习中不断地巩固自己,展示出你最好的作品,乐于帮助勤于奉献。不要偏向某一个特殊的知识点,耐心地去控制每一个节点,享受单击F12后的乐趣,这就是最简单也是最有效的学习方法!

  

1.2.13  Robert J. Tiess

    Robert是一名优秀的抽象艺术家,他从2003年便开始使用Blender为主要工具,曾多次荣获Suzanne最佳角色动画和最佳数字艺术作品等奖项,他的作品以大胆的色彩和奇特的构思著称。图1-30和图1-31为其代表作品。

    图1-30  抽象系列图1-31  众神系列

Blender是世界上最强大的艺术家工具之一!由于开发模式的限制,它的一些功能与其他软件相比还存在差距,但是功能上的限制并不是制约艺术家创作的主要因素,你的灵感和创意才是作品的真正灵魂。所以我在这里想说的是:不要过多地将自己的作品质量依赖于特定的软件上。

    在决定自己专注于哪一款软件之前,我建议你可以先尝试一下Blender,只要找一些简单的入门教程,感受一下它的优秀和独树一帜的地方,当亲身体会并对比之后,才能说服自己去做出明智的选择。我也是经过多次的选择和比较尝试之后,最终才将Blender确定为我的创作工具的。

    要想在艺术上获得快速的成长,你一定要主动地学习,而且最好从基础开始。我建议从最基础的传统绘画起步,并且多去研究知名艺术家作品的风格以及美术史。当你能熟悉并且可以辨识那些大师级作品的特色之后,才能逐渐总结并形成自己的独特风格。同时我建议你还要多尝试着去提升自己对艺术灵感的捕捉能力,多使用全新的视角去观察世界,释放自己的思维!

    当你能重新审视这个世界,并像艺术家一样去思考时,就会发现艺术其实可以让一切都变为可能,创意和灵感将无处不在!不要畏惧创新,不要给自己设定思维的定式和约束。尝试着使用不同的技术手段和多样的艺术风格,在这些全新的领域中去发现自己,并将自己的所思和所得展示出来。同时一定要多和大家交流,从互动中实现学习和进步,在探索中获得新的成长。

    我们都可以成就自己的艺术家梦想,因为艺术本身就属于我们每一个人,艺术其实就是我们使用不同的视角去表现着同一个世界。学习Blender可以为你带来更多的全新体验,拥有去感受世界的另一个全新方式的机会,同时也可以帮助你去尝试超越自我,实现思维的突破。因为学习本身的含义就是去不断地发现,去体验和享受知识。这就是我多年使用Blender之后的体会,而且我还在继续学习,只因未来还未来,更多的未知还等待着我们的发掘和实现!

 

1.2.14  Sebastian Knig

    德国艺术家Sebastian创办了cmiVFX在线CG教学网站,致力于提供高质量的Blender视频培训,从初级使用至高级合成应用,以及大量的VFX实践运用教学。图1-32和图1-33为其表作品。

图1-32  Sebastian Knig for cmiVFX:Fly    图1-33  Sebastian Knig for cmiVFX:Mammoth作为一名经验丰富的Blender培训专家,Sebastian说道:今年已经是我使用Blender的第6年了,它可靠实用,一直都没有让我失望过。当初出于兴趣选择并学习它的时候,是为了完成我的大学毕业设计,但是后来我却逐渐迷上了这款软件。直到现在,它已经成为我的主要创作工具,而我现在的工作也正是一名使用Blender的自由职业艺术家,以及一名全职的Blender培训师。

    人们常问我为什么会选择并一直坚持使用Blender,而不是市面上常用的Maya、Cinema 4D以及3ds MAX?我想大部分的Blender用户的回答可能都是“因为这玩意儿是免费的!”。当然这是它吸引大量用户的一个重要因素,而且如果没有开源模式,Blender也许无法存活至今天。但是对于我来说,它更重要的魅力还是它所带来的开源精神,以及快捷便利的操作模式和优秀的用户体验。

    作为一名3D艺术家和自由职业者,软件是否开源或者免费并不能作为我选择它的主要标准,我的标准应该是它能不能帮我快速而高效地把任务完成,而且做出漂亮的结果并且令客户满意。花多少钱去购买软件对于我来说并不重要,毕竟为了工作,这点成本还是可以接受的。但是Blender对于我来说,它相当地高效、稳定,而且配备了足够强大的工具集,同时还拥有大量的开源资源,以及友好的社区和易于接触的开发人员。这么多的优势完全足以让我做出最终决定,选择它为我的主要创作工具!

    我很欣赏这种开源的精神和文化,为此我也创办了cmiVFX网站,提供类似的开源资源和具有工业标准的高级应用教学。在我看来,现在所谓的工业标准不仅有我们常讨论的Houdini、Cinema 4D、Auto Desk或者Nuke,还应该包括Blender这颗未来的标准之星!人们曾将Blender看做一个简化的小工具,或者仅供业余爱好者打发时间的玩具,但是事实已经告诉他们,这些想法早就过时了!

    至少对于我来说,Blender是一款完美的3D软件,它十分适合自由职业艺术家、小型的工作室或着创业型团体使用,即使是在大型公司中,Blender也可担任生产模式中的重要一员,它甚至还能够承担一条完整的生产流水线。Blender拥有大量的闪光点,例如它的动画系统、建模方式、修改器模式、流体模拟、软体模拟、粒子和毛发系统、烟雾模拟以及内置的后期合成系统等,更重要的是,它每天还在不断地新增更多更新更实用的功能!

    如果有Blender无法完成的工作,你完全可以借助于其他的软件,因为Blender提供了十分完美的接口功能。例如你要完成一个镜头追踪的特效,没问题,Blender可以让你将镜头捕捉软件快速地嫁接到工作流的任意一个位置上;如果你觉得内置的渲染器还不过瘾,那么外置的渲染器包括LuxRender、Octane甚至VRay都可以随意由你调用,十分方便!

    在大部分情况下,一个项目都不可能只使用一个软件来完成所有的工作,每一套工具都有它特有的强项。你有充分的理由和时间去做选择,但是我认为最重要的一点,就是它一定要是最高效的工具。Blender的开源特性,以及它灵活的外置调用模式,快速的开发更新,都能使其成为兼容性最好的软件。我相信现在的2.5版已经能完全胜任你的所有工作,同时未来具有更多开发目标的2.6版更将值得我们期待!

 

1.2.15  Soenke Maeter

    德国插画家Soenke可谓是Blender艺术圈中的大师级人物,他曾连续包揽了两届F1大赛冠军,和一届Blender World Cup全球竞赛冠军。2010年,他加入了Durian团队,参与电影《Sintel》的后期合成制作,并获得了由CGTALK评选的2010年最佳杰出CG特效奖提名。图1-34和图1-35为其代表作品。

    对于我来说,艺术的奇妙之处在于它可以帮助我们去发现这个世界中的美丽事物。掌握一门软件,例如Blender,并且不断地去追寻最新的3D技术,是用来塑造和重现你想法的必要手段。同时,永远不要放松对艺术认知的捕获力,毕竟我们都期待着你最终想要表达的作品结果。

    图1-34  Reaching Out图1-35  Blender F1 2008/2009

 

1.2.16  Tony Mullen

    Tony是世界上出版最多Blender书籍的作者,如图1-36和图1-37所示。他撰写的《Mastering Blender》,《Introducing Character Animation with Blender》,《Bounce,Tumble and Splash!:Simulating the Physical World with Blender》,《Blender Studio Project:Digital Movie Making》和《3D for iPhone Apps with Blender and SIO2》等书,多年蝉联亚马逊等网站的最佳畅销书排行榜。他在日本的Tsuda大学讲授Blender和Python相关课程,平时则担任独立制片人和动画师。当他获悉这本中文Blender图书的出版消息时,说道:

    当我听说有一本即将面向中文市场的Blender书籍出版时,我十分兴奋。因为这标志着,Blender在亚洲的推广和发展进入了一个历史性的时刻,Blender的用户群将得到前所未有的壮大,这对Blender和中文用户都是一件极大鼓舞的事情。Blender对于亚洲市场还是一个全新的产品,不过我坚信,Blender在这里将会很快得到快速的发展。

    图1-36  Tony的Blender丛书图1-37  Tony的Blender丛书

最近,一些来自亚洲的开发者也加入了Blender的全球化开发,这使得最新版本可以确保汉语和日语的国际化兼容,Blender的用户能因此顺利地将界面完全转换为本国语言,这对于本地化的推广有着十分重大的意义,感谢来自亚洲的开发者们!

    我本人使用Blender已经多年,并长期在日本讲授Blender的相关课程。在担任讲师的这段时间里,我十分欣慰地看到,越来越多非常有激情的日本Blender用户正在不断地加入我们,甚至参与到Blender的维护与开发中。能够亲眼见证Blender在这个国家中的成长,是我最珍贵的人生经历。

    Blender为中国用户提供了大量的优秀功能。首先它本身就是一款自由软件,用户不需要考虑版权问题就可以随意拷贝和共享。学校、单位或相关培训机构可以非常快捷地建立一套基于Blender的CG培训平台,学生可以完全自由而免费地使用Blender做任何事情。对于工作室、自由职业者和众多的创意工作者来说,Blender可以让你立刻开展工作,而无需要负担高昂的软件费用等初期创业成本。更重要的是,Blender已经发展为一套顶级的CG创建软件工具集,它包含了建模、动画、物理效果以及游戏开发等相当丰富的功能。

    另一方面,如果Blender能被为数众多的中国用户接受的话,这对软件本身是件好事,整个国际社区的建设也将受益匪浅。和所有开源软件一样,Blender也需要依赖于庞大、活跃而且有建设性的社区支持。Blender受助于公众的捐赠维持了软件的持续性开发,广泛的应用领域也使得更多的艺术家和开发者开始使用Blender,并同时贡献着代码更新和Bug修复。我希望能有更多的中国程序员可以加入我们,并投身于Blender的开发与更新,同时也期待更多中国艺术家创作出优秀作品,可以向全世界展示Blender这套强大的创意平台!

    我希望本书可以为Blender带来更多更广泛的拥护者。Blender是一套神奇的软件,无论是学习它还是使用它都是一件充满乐趣的事情。它拓展了你的思维,帮助你用最简单的方法去描绘出心中最美丽的幻想和最具创意的想法。我期待能看到更多的中文用户在这本书的帮助下,去体验学习和使用Blender的乐趣!

 

1.2.17  Vitor Balbio

    巴西艺术家Vitor是一名技艺高超的BGE游戏设计师,他制作的《Lucy and the time machine》获得了Blender Game Contest 2010全球大赛的冠军,如图1-38所示。

    图1-38  《Lucy and the time machine》游戏截图

曾经在很长的一段时间里,开源软件往往是低品质和业余的代名词。那时市场上的几款主流软件,在与低质量的开源工具进行了多年封闭式的竞争后,几乎完全垄断了整个市场,这使得行业中逐渐产生了一种排外的3D文化,使用户在选择软件时不是主要考虑它的实用性,而是考虑它在市场上的占有率。但是近几年来由于Blender的出现,正好改变了这种失衡的状态。

    经过大量的比较与测试,Blender已具备了实现高品质生产的标准和能力,完全可以实现各领域中的应用,包括数字艺术、3D动画、广告和游戏制作等。

    Blender拥有十分全面的工具集、稳定的应用性能、完善的文档管理和非常活跃的全球社区。如果你是一位不满足于当前现有3D工具的技术爱好者,或者是专业的艺术家,我强烈建议你尝试一下Blender。下载它,看看网上丰富的免费视频教程,参与到社区的讨论中,你将发现其实融入到这个全新的环境中很容易。这就是我接触Blender的亲身经历,也是现在更多专业艺术家正在经历的过程。你也准备开始并享受Blender带来的全新3D体验吧!

 

1.2.18  Диметр алинин(Dmitry Kalinin)

    俄罗斯艺术家Dmitry Kalinin是一名自由职业艺术家,图1-39为其代表作品From Another World。他说道:

    我是在一年前才开始接触Blender的,那时完全出于一种好奇和兴趣,我决定在一个项目中去实验性地使用它,但是一旦当我上手之后才发现,它的能力远超出我的意料,而且十分容易掌握。所以现在,我已经完全使用它来制作我的全部作品了。

    Blender给了我一种动力去学习更多的新鲜事物,它让我见识了很多全新的概念技术和制作方式,例如骨骼、渲染和合成。而且Blender还在不断地开发新功能,很多都是前所未有的,在这方面Blender绝对占据了技术的最前沿!

    图1-39  From Another World

以前我们可能需要同时使用多个软件,才能完成一个完整的项目。但是Blender的工具集相当全面,从刚开始的草图设计到最后的视频合成,你都可以找到对应的合适工具。同时Blender也拥有强大的兼容性,可以和市面上的一些商业软件完美地结合在一起工作,例如LuxRender和Renderman等。在格式转换上,Blender也绝对是得心应手,你所知道的文件格式都可以在Blender上实现相互转换。所以在实际的工作中,我常使用Blender完成建模和雕刻工作,十分高效,而且质量也很不错。

    在强大的开源力量之下,更多的艺术家已经开始使用Blender来完成他们的作品。我相信,未来的Blender一定会逐渐壮大,并成为主流应用中的一员。

 

1.2.19  黄海

    黄海是国内最早接触Blender的代表用户之一,曾获得2006年F1大赛荷兰站第2名,如图1-40所示。他现为一名自由职业插画家。2007年北京开源软件大会上,黄海代表BlenderCN做了题为《3D开源软件Blender推介》的演讲。同时他也担任了国内多家知名艺术论坛的Blender专区版主,并长期在BlenderCN社区中使用网络ID:DeathBlood为大家提供大量的免费教程和学习资源,他为Blender在国内的发展和宣传立下了汗马功劳。图1-41为其代表作品。

    图1-40  Blender F1 2006

图1-41  小女孩系列

几年前下载Blender完全是看中了它的娇小身材(当时只有2M),并惊讶于其众多的功能,不过毕竟只是惊讶,随后就丢弃了!后来由于工作的变更,我需要一款小巧并且功能相对齐全的三维软件,脑海里第一且唯一的印象就是Blender了,建模、灯光、材质、渲染、动画,甚至还可以制作交互式3D和游戏,这些对于我的工作来说真的是太棒了!

    在大部分工作中,我都会使用Blender来建模并创建材质,随后用Yafaray进行渲染以获得理想的效果。由于Blender自身是不支持GI渲染的,所以我也常选择外置的渲染器进行渲染,比如Yafaray、LuxRender、VRay和Octane等照片级别的渲染器。我的工作中也会经常遇到需要卡通效果的渲染,这一点在Blender下的制作效率相当的高。记得以前使用过3ds Max与Finaltoon的组合,但是它们的线条渲染相当费时,如果场景有一千万面,整个系统就几乎要崩溃了。而用Blender的Edge却完全没有这个顾虑,所以现在Blender已经成了我工作中必备的一个3D创作软件了。

    Blender这几年的发展相当迅猛(从它的体积就能看出来了,已经有20M了),它也越来越能在各个领域胜任工作,如果你对大软件的价格望而却步,那么Blender绝对是不二之选。如果你初学Blender,看着陌生的界面,请不要担心、退缩,当你真正走进去后就会发现,原来Blender不只是Free(免费)也很Free(自由),当你理解它的布局和基础功能之后,一定会慢慢喜欢上它的。

    作为刚刚接触Blender的新人,肯定会遇到很多的难题,比较另类的界面、诡异的操作手法、无处寻找的工具等,这也都是我的亲身经历。早在几年前,我刚入手Blender时,简直就摸不着东南西北。所以我希望初学者首先应该多看看官方的Wiki文档,然后再跟着本书的介绍,慢慢地熟悉界面和所有菜单里的功能。当你对Blender可以达到了如指掌的时候,再认真研究本书中对项目流程的解析,我想这时你就一定能游刃有余地开始使用Blender创作自己的CG作品了。如果英文不是很好,也可以登录Blender的中国官方网站BlenderCN.org,那里汇聚了很多国内的Blender使用者,大家一起学习的气氛更能给你带来鼓舞。

    所以最后我想说的是,欢迎你进入Blender的大家庭!

 

1.2.20  玉永海

    玉永海是国内知名的3ds MAX专家,曾著有《3ds MAX角色动画技术精粹:蒙皮·毛发·骨骼与绑定》,2006年开始使用Blender,并在BlenderCN社区中以Harrison为ID制作了大量的免费教程。2007年,由他制作的独立动画《Blood》荣获Suzanne最佳短片奖。他说道:

    如果你买了这本书,说明你对这个软件感兴趣。当你开始学习和使用这个软件后,也许你也会跟我一样开始对这个软件着迷,那么就先让我讲讲我跟Blender的一些故事吧。

    1.新欢

    接触这个软件大概是4年前的事情了,当时我研究的还是3ds MAX。那

1.3 Blender的安装与配置 Top

1.3.1  系统要求
1.3.1.1  硬件环境配置
    对比Maya和3ds MAX等大型3ds制作软件,Blender不需要很强的计算机硬件配置,甚至可以在iPhone上运行它。Blender Foundation提出的个人电脑最低配置要求如下:
   

      当然,配置越高的硬件越能提高Blender的工作效率。三键滚轮鼠标
    300MHz的CPU
    最低128MB内存
    具有1024×768分辨率的16位显示器
    至少16MB显存的OpenGL图形卡
    最低20MB硬盘空余空间
    当然为了获得更好的性能,这里推荐你的配置至少是:
    三键滚轮鼠标,推荐配合使用WACOM等数位板
    多线程的64位CPU
    8GB内存
    具有1920×1200分辨率的24位以上双屏显示器
    768MB以上显存的OpenGL图形加速卡,例如ATI Fire GL或者Nvidia Quadro
    Blender支持32位和64位硬件系统,在64位Unix系统下无2G最大内存限制。渲染支持多线程CPU,例如Intel的Core i7和AMD的X6芯片组。Blender支持各类手绘板系统,并可兼容在Windows、OSX和Linux等操作系统下使用。

 

1.3.1.2  操作系统与环境变量配置
    Blender可以运行在任何操作系统上,以下是Blender支持的常用系统列表:
    Windows 98、ME、2000、XP,Vista和Win7
    Mac OS X 10.3及最新版本或 PowerPC
    Linux i386,x86_64/AMD64
    FreeBSD 6.2 i386 Irix 6.5 mips3
    Solaris 2.10/Sparc
    Blender提供了两种安装方式,一种是利用程序解包来安装,另一种是源代码自行编译。可以进入Blender官方主页的下载区,点击Downloads下载对应系统的安装文件。
   

      网站地址:http://www.blender.org/download/get-blender/。
      网站地址:http://www.python.org/download/。Blender的二进制安装文件共有如下4个版本:
    Windows 32/64 bit
    Linux x86-32/64
    Mac OS X-PowerPC/Intel
    FreeBSD
    其中,Linux版又分为4个不同版本:Intel架构版、PowerPC架构版、静态链接库版和动态链接库版。区别动态链接库版和静态链接库版很重要,因为静态版在编译时已经包含了OpenGL的库,从而使Blender可以在显卡无硬件加速的系统上运行。如果你的机器上不需要使用静态版,那就请使用动态版。
    在Blender里OpenGL被用于各种图形的绘制,包括菜单和按钮。因此,要执行界面操作的系统必须安装OpenGL。对OpenGL的依赖要求安装的OpenGL必须是正确而且是兼容的,要知道,不是所有的3D显卡生产商都能提供这样的兼容性,尤其是那些游戏市场中的廉价显卡生产商们。
    Blender使用了Python作为脚本支持,默认安装的目录中会包含一些基本的库文件,但是对于一些特殊的编译版本,以及在Linux系统下运行完整的脚本程序,必须安装Python的完整程序库。
登录Python官方网站的下载专区,点击页面上的Downloads下载即可。安装完毕后建议对环境变量做一些设置,将PYTHONPATH路径指向Blender的脚本文件目录。例如在Windows系统下采用了默认路径安装,可在环境变量中设置Blender的默认脚本位置PYTHONPATH为“C:\\Program Files\\Blender Foundation\\Blender\\scripts\\bpymodules”。当在启动Blender时,如果能在控制台窗口中看到如下打印输出,就说明已经正确地安装好Python了。
    Compiled with Python version 2.6.6.
    Checking for installed Python...got it!

 

1.3.2  快速安装
    针对Windows系统,双击下载的可执行二进制文件blender-2.##-windows.exe,即可开始快速安装。单击接受证书等条款后继续安装,完毕后可以在桌面和开始菜单中找到可执行的Blender主程序,或者直接双击.blend项目文件运行主程序。
    若是OSX系统,可双击解压安装文件blender-2.##-OSX-10.3-py2.#-ARCH.zip,在目录下即可看到主程序文件,双击图标就可以运行Blender了。因为Blender使用OpenGL来渲染用户界面,而Mac OSX也使用它来绘制整个桌面,所以你应该保证系统有足够的显存,Blender在显存小于8MB时无法运行。为了达到16MB显存,可以将显示设置成“1000s of colors”(System Preferences->Displays)。
    在Linux系统下,需要下载一个适合自己机器的版本进行安装,下载专区提供的文件名为blender-2.##-linux-glibc#.#.#-ARCH.tar.gz,这里的2.## 是版本号,#.#.#表示为glibc版,而ARCH则表示机器构架,类似的有i386或PowerPC。将其解压到所选择的目录中,在其中可找到Blender的执行文件。或者首先运行X图形系统,打开Shell执行./blender即可。

 

1.3.3  本地编译

1.3.3.1  源码下载
    本地编译可以使用Visual Studio 2008,也可以使用MinGW,同时还需要下载Cmake和Tortoise SVN,来帮助完成编译环境的部署。当软件安装完毕后,就可以开始下载Blender源码了。首先使用Tortoise SVN从以下服务器下载最新版本号的源码到本地。
    https://svn.blender.org/svnroot/bf-blender/trunk/blender
    这里将源码下载到目录C:\\blender\\blender,接下来再下载编译所需要的库文件,使用Tortoise SVN从下面的地址中下载即可。
    https://svn.blender.org/svnroot/bf-blender/trunk/lib/windows
    将库文件放置在C:\\blender\\lib\\windows即可,如果需要编译64位的Blender,那么需要下载如下的库文件,并放置到C:\\blender\\lib\\win64。
    https://svn.blender.org/svnroot/bf-blender/trunk/lib/win64

1.3.3.2  配置编译
    使用MinGW执行编译时,需要添加如下脚本来自定义编译配置,首先新建一个配置文件,加入如下代码:
    #C:\\blender\\user-config.py
    WITH_BF_FFMPEG=True
    WITH_BF_OPENAL=True
    WITH_BF_GAMEENGINE=True
    WITH_BF_PLAYER=True
    WITH_BF_JACK=True
    WITH_BF_SDL=True
    WITH_BF_ICONV=True
    WITH_BF_COLLADA=True
    WITH_BUILDINFO=True
    BF_DEBUG=False
    BF_NUMJOBS=1
    如果计划编译64位Blender,则需要取消SNDFILE、JACK和QUICKTIME等选项,因为这里根本就没有针对这些功能的编译库,修改脚本文件如下:
    #C:\\blender\\user-config.py
    WITH_BF_FFMPEG=True
    WITH_BF_OPENAL=True
    WITH_BF_QUICKTIME=False#不支持64位编译模式
    WITH_BF_GAMEENGINE=True
    WITH_BF_PLAYER=True
    WITH_BF_JACK=False#不支持64位编译模式
    WITH_BF_SDL=True
    WITH_BF_ICONV=True
    WITH_BF_COLLADA=True
    WITH_BF_SNDFILE=False#不支持64位编译模式
    WITH_BUILDINFO=True
    BF_DEBUG=False
    BF_NUMJOBS=1
如果使用MSVC来执行编译,则不需要使用脚本来执行编译配置,只需要使用CMake打包制作“Solution”文件,并导入到Visual Studio中进行编译即可。
    首先运行CMake,在顶部的源码目录中,输入放置Blender源代码的位置,这里为C:\\blender\\blender,如图1-42所示。接下来在下面的编译目录中选择打算存放编译文件的目录,例如C:\\blender\\build。最后单击Configure按钮,在弹出的对话框中选择编译器即可。
    图1-42  运行CMake
单击选择Visual Studio后确认,CMake会弹出一个列表,供选择编译配置,在32位Blender的编译模式下,可以保持默认选择。一旦完成了这项设置,CMake会在指定目录下生成一个Solution文件编译包“Blender.sln”。

1.3.3.3  运行编译
    最后可以关掉CMake,开启Visual Studio 2008,在刚才的路径(C:\\blender\\build)下打开编译包文件“Blender.sln”。将默认的编译目标从Debug转换至Release,如图1-43所示。并选择编译菜单中的Build Solution运行工程,即可以开始编译了。
    大约10分钟后,就可以在C:\\blender\\build\\bin\\release目录下找到刚才编译的可运行Blender程序了。
    图1-43  Visual Studio下执行编译输出
如果使用MinGW来完成编译,则需要首先新建一个后缀名为.bat的批处理文件,并在其中添加如下代码:
    set PATH=%PATH%;C:\\Python26;C:\\MinGW\\bin;C:\\MinGW\\lib

    cdC:\\blender\\
    python scons\\scons.py BF_TOOLSET =mingw
    其中,Python的路径为安装路径。单击执行这个批处理文件,系统将自动调用MinGW执行编译操作,最后的编译输出可以在目录C:\\blender\\install\\中找到。

1.3.3.4  更新SVN
    如果需要重新编译至更新的版本,需要首先对编译环境执行清理操作,将旧的文件从编译环境中去掉,在控制台中使用如下代码:
python scons\\scons.py -c
    接下来如果需要从SVN服务器上更新Blender代码,只需要在路径C:\\Blender\\下创建一个批处理文件,并添加如下代码,运行即可:
    cd lib\\win32
    svn update
    cd..\\..\\blender
    svn update
    pause
    如果是64位的编译环境,则修改代码如下:
    cd lib\\win64
    svn update
    cd..\\..\\blender
    svn update
    pause

 

第2章 基本操作与界面 Top

   Blender采用了一套全新的用户体验机制,它的系统界面和操纵控制方式与Windows下的其他同类3D软件完全不同,这种差异性也是Blender强大功能的基础。在本章中,我们将学习Blender中的一些基本概念,目标是使读者能熟悉软件的视图与界面,并熟练掌握一些基本的控制与操作方式。

2.1 Blender基础概念与基本操作 Top

2.1.1  鼠标操作与键盘常用功能键
    在本书中,将鼠标的左键单击操作统称为LMB(Left Mouse Button),鼠标的滚轮操作简称为MMB(Middle Mouse Button),鼠标的右键单击操作则简称为RMB(Right Mouse Button)。
    官方推荐在使用Blender的过程中选择三键的滚轮鼠标,如果使用的是双键鼠标,也可以借助组合键Alt+LMB来替代滚轮功能。针对Mac苹果电脑的单键鼠标用户,可以使用MB(Mouse Button)来替换LMB操作,用Option/Alt+MB来代替MMB功能,使用Command/Apple+MB来替代RMB功能。
    同时,请尽量选择标准的Windows全键盘,如果使用的是没有小键盘的笔记本,也可利用组合键FN+Num Lk来开启数字小键盘功能,或者在参数设置中激活Emulate Numpad选项,使用数字键0~9来代替小键盘。
    本书中的所有快捷键范例,均使用大写字母来表示,组合键操作则使用“X+X”来表示。例如,“G+Z”表示先单击快捷键G,再单击快捷键Z。小键盘的数字键分别使用Num0~9来表示,其他的常用快捷键还包括Ctrl、Alt、ESC和F1~F12等。

 

2.1.2  物体与原心
    在Blender中,一个基础的控制单位称做Object(物体)或者对象。一个物体可以是一个网格模型,也可以是一盏灯或是一台摄像机。每一个物体都有一个Origin(原心),用于标识物体本地坐标系的原点和控制杆的默认位置。如图2-1所示的多边形、灯光和摄像机上的橙色圆点,分别为各个物体的原心。
    在Blender中对物体做选择操作,是将鼠标的光标移动至物体轮廓线内的任意表面位置上,然后单击鼠标的RMB即可。如果需要同时选择多个物体,可以使用组合键Shift+RMB来完成多选操作。当一个物体被选中时,它的轮廓线会默认变成橙色,此时其原心位置也会出现一个控制器,分别使用了红、绿、蓝三种颜色,来表示X、Y和Z轴三个坐标方向以及对应方向上的控制杆。在控制杆的箭头处单击鼠标LMB,即可对控制杆执行相应的移动或旋转等控制操作。
    图2-1  不同物体的原心

 

2.1.3  Blender的界面操作

2.1.3.1  界面Layout(布局)
    图2-2为Blender的默认启动界面,界面中的窗口按照功能进行区域划分。
    图2-2  Blender的默认窗口布局
视图编辑窗口是Blender的主要窗口之一,用于显示当前3D场景中的所有物体,包括灯光、摄像机和多边形物体等。面板窗口用于分类列举所在工具面板中的控制面板,其中的属性选项包含了Blender所有工具和对应工具的功能属性参数。标题栏显示了当前的窗口属性,可以单击上面的负号箭头按钮隐藏标题栏。

2.1.3.2  新建Layout(布局)与Scene(场景)
    系统默认的界面布局适用于建模等标准应用,同时系统还内置了多种界面布局,针对不同的工作环境需要,供用户快速地切换使用。例如有专门针对Animation(动画)、Compositing(合成)和UV Editing(UV 编辑)等应用的窗口布局模式。只需要在主标题栏上单击如图2-3左图所示的小按钮,即可在下拉菜单中选择这些对应工程的窗口布局模板,当然也可以使用快捷键Ctrl+←或Ctrl+→来对布局做快速切换。
    在Blender中,每一个以“.Blend”为后缀的文件都是一个Project(工程),每一个工程可以包含多个Scene(场景),可以使用不同的窗口布局来编辑同一个独立的Scene(场景)世界。一个工程中默认只有一个Scene(场景),我们可以为同一个工程添加多个Scene(场景),如图2-3中图所示。只需要单击Scene(场景)管理中的十字星箭头,即可为当前工程添加一个新的Scene(场景)。
    图2-3  Layout(布局)和Scene(场景)管理
如果希望能对启动时使用的界面布局进行自定义,可以在完成布局设置后,单击Ctrl+U来保存你的设置,如图2-3右图所示。这样当下次运行Blender时,系统会默认加载保存的自定义窗口布局。
2.1.3.3  自定义布局
    Blender的界面布局具有很高的自由度,每一个窗口的尺寸和位置均可任意地调节,可以根据需求将整个窗口划分成不同类型的布局结构。
    首先将鼠标移动至两个窗口的分界处,待鼠标箭头变成平行的双向箭头时,即可按住LMB拖动窗口做水平移动,同理也可对窗口做上下移动操作,如图2-4左图所示。
    图2-4  缩放、分离和合并窗口操作
如果需要分割窗口,可将鼠标移动到窗口右上方的箭头位置,待鼠标箭头变成十字星时即可向左或者向下拖动,从原窗口中分割出一个新的窗口,如图2-4中图所示。
    合并窗口的操作和分割操作相反,待鼠标箭头变成十字星时即可向右或者向上拖动,如图2-4右图所示。被合并的两窗口之间会出现一个巨大的半透明箭头,箭头方向将指向被合并的窗口。在任何窗口操作过程中,都可以单击ESC取消操作。
    标题栏可放置在窗口的顶部、底部,或者被隐藏起来。使用移动窗口的操作方式来向下移动标题栏,如图2-5左图所示。当标题栏缩小到一定比例时,便会被自动隐藏起来,如果想恢复显示,可单击窗口右下角的小十字星,如图2-5中图所示。在标题栏上单击鼠标右键,将弹出标题栏的操作菜单,如图2-5右图所示。选择Flip to Top(反转至顶部),可将标题栏从窗口的底部移动至顶部。菜单中的Maximize Area(区域最大化)功能,可将当前窗口最大化至全屏显示,也可以使用快捷键Ctrl+↑来完成窗口的最大化操作。
    图2-5  隐藏、恢复和移动标题栏操作

 

2.2 用户参数设置 Top

    在视图窗口中,单击组合键Ctrl+Alt+U可弹出User Preferences(用户参数)设置窗口,在这里可以调整Interface(界面)、Editing(编辑方式)、Input(快捷键)、AddOns(插件)、Themes(界面主题)、Files(文件)系统和System(系统)等相关的参数设置。完成设置后,需要单击左下角的Save As Default(存储为默认)按钮,才能保存所有的更改。如果需要重置系统的默认设置,可进入Blender的根目录\\blender\\config\\文件夹,删除里面的“startup.blend”文件即可。

 

2.2.1  用户界面设置
    如图2-6所示为Interface(用户界面)设置面板。
    图2-6  Interface(用户界面)设置面板
2.2.1.1  Display(显示)设置
    Tooltips/Show Python Tooltips:激活后,当把鼠标移至任意选项或按钮上时,会弹出一个功能帮助的信息提示框。
    Object Info:开启后,在3D视图窗口的左下角,将显示当前物体的名称和时间、帧数等信息。
    Large Cursors:启用大号的光标。
    View Name:开启后,在3D视图窗口的左上角将显示视图名称等信息。
    Playback FPS:在动画回放中开启帧数的显示。
    Global Scene:全局场景选项,使当前场景中的物体可在其他场景中实现全局调用。
    Object Origin Size:用于控制物体的原心尺寸,直径范围为4~10个Blender单位。
    Display Mini Axis:控制3D窗口左下角的小坐标尺寸,Size用于调节大小,Brightness则用来调节透明度。
2.2.1.2  View Manipulation(视图控制)设置
    Auto Depth:开启视图的自动Z缓冲深度检测。
    Zoom To Mouse Position:开启后,使用MMB对视角做旋转等操作时,画面将以鼠标光标为焦点。
    Rotate Around Selection:开启后,使用MMB对视角做旋转等操作时,画面将以选择物体为焦点。
    Global Pivot:使各窗口中Pivot旋转坐标的显示模式同步。
    Auto Perspective:开启后,视图将会在使用小键盘Num1~9切换时,自动取消透视视角。
    Smooth View:控制视角画面切换时,动画过渡效果的时间长度。
    Rotation Angle:使用小键盘的Num4、6、8、2作为视角角度变换时的步进角度。
    2D Viewports:修改2D视图中的网格尺寸最小值,例如Timeline时间线和Dope Sheet中的背景网格。
2.2.1.3  Manipulator(控制器)设置
    Size:修改控制器的整体尺寸。
    Handle Size:调节控制杆的手柄尺寸。
    Hotspot:调节用于激活手柄的热区范围。
2.2.1.4  Menus(菜单)设置

    Open On Mouse Over:激活后,只需将鼠标滑动至菜单名上,即可弹出当前菜单,而无需使用LMB单击菜单名来打开菜单。
    Menu Open Delay:修改菜单弹出的延时时间。Top Level和Sub Level分别调节一级菜单和二级菜单。
    Show Splash:是否在启动时显示欢迎界面。

 

2.2.2  编辑设置
    如图2-7所示为Editing(编辑)属性设置面板。
    图2-7  Editing(编辑)属性设置面板
2.2.2.1  Link Materials To(材质链接方式)设置
    当我们在Blender中创建一个Object(物体)时,它的材质等属性数据就会自动链接至Scene(场景)数据库中,图2-8左图即为场景的树形数据结构图。
    图2-8  材质在数据结构中的不同链接方式
当选择链接方式为ObData时,为一个网格物体添加一个Material材质属性,其材质就会被创建为网格属性的一个子物体类,作为网格的一个数据属性,如图2-8中图所示,表示了网格与材质的从属关系。
    如果选择链接方式是Object,材质将作为一个并列的物体数据方式来创建,如图2-8右图所示,这时网格和材质将不再存在从属关系。
2.2.2.2  New Objects(新建物体)设置
    Enter Edit Mode:激活此选项后,当新建一个物体时,系统会自动进入其编辑模式。
    Align To:设置物体在被创建时所默认使用的坐标系,选项World将在世界坐标系上创建物体,选项View则会将物体创建在与屏幕垂直的视图上。如图2-9所示,左边的平面和大圣是在World模式下创建的效果,而右边则为View模式下创建的效果。
    图2-9  不同视角下创建物体的效果
2.2.2.3  Undo(撤销)设置
    Global Undo:使用全局撤销模式,步骤数据将会保存在内存中。
    Steps:设置存储的可撤销步骤数量。
    Memory Limit:存储撤销数据的内存设置,0为不限制。

2.2.2.4  Grease Pencil(视图绘制铅笔)设置
    Manhattan Distance:设置绘制时笔触的绘制像素范围。
    Euclidean Distance:设置连续笔触间的间距。
    Eraser Radius:设置橡皮擦的尺寸。
    Smooth Stroke:设置平滑的路径参数。
2.2.2.5  Key framing(关键帧)设置
    Visual Keying:设置是否为约束物体自动添加视图关键帧。
    Only Insert Needed:只插入当前修改的属性关键帧。
    Auto Keyframing:是否开启自动插入关键帧的功能,当激活后可设置其附属功能Only Insert for Keying Set和Only Insert Available,分别控制插入帧的方式。
    New F-Curve Defaults:F曲线的默认控制,可设置控制杆的调节方式分别为Bezier/Liner/Constant贝济埃/线性/非线性。如图2-10所示,从左至右分别为贝济埃、线性和非线性曲线的形态。
    图2-10  Bezier/Liner/Constant三种曲线的形态
2.2.2.6  Paint and Sculpt(绘制与雕刻)设置
    Unify Size/Strength:是否使用统一的笔触尺寸和强度。
    Overlay Color:设置修改笔触时的背景色。
    Threaded Sculpt:使雕刻支持多线程的CPU计算。
    Show Brush:设置在雕刻的过程中显示笔刷。
2.2.2.7  Duplicate Data(数据复制)设置
    用于定义默认的数据复制模式,当复制物体时,系统会根据当前激活的属性选项,为物体的数据做选择性复制。如图2-11左图所示,在激活Mesh选项后对物体做复制操作时,可以看到物体和其网格属性都产生了全新的复制体。而当取消Mesh复制选项时,如图2-11右图所示,只有物体数据被复制了,而网格属性数据并没有被复制,只是被重复地调用至新的复制物体中,作为子属性。这里使用的数据复制模式都是基于直接复制,快捷键为Shift+D,而不是快捷键为Alt+D的关联复制,后者将默认为新物体复用全部的属性数据。
    图2-11  数据的复制模式

 

2.2.3  输入控制设置
    如图2-12所示为Input(输入控制)的设置面板。
    图2-12  Input(输入控制)设置面板
Presets:键盘预设,用于选择预设的快捷键设置,可以使用其他软件的快捷键,例如Maya等。

2.2.3.1  Mouse(鼠标)设置
    Emulate 3 Button Mouse:如果使用的是双键鼠标或苹果鼠标,可以开启这个选项来模拟三键鼠标的功能,详细使用方法参考前面介绍的鼠标使用规则。
    Continuous Grab:使鼠标在控制拖动范围超出了画面时,启用连续的滚动模式。例如拖动一个物体一直向右移动时,当鼠标光标到达窗口最右端,将会自动移动到窗口的最左端,使得光标的移动动作可以无限地连续下去。
    Select with:决定使用鼠标左键还是右键来选择物体,默认为右键。
    Double Click:设置用于判断鼠标双击动作的间隔时间。
    Emulate Numpad:如果键盘没有小键盘区,开启这个功能后数字键0~9可用来代替NumPAD。
    Orbit Style:习惯使用Maya的用户可开启Turntable来设置视图控制方式。
    Zoom Style:修改控制视图的缩放方式。
    Invert Zoom Direction/Wheel Zoom Direction:控制Ctrl+RMB和MMB对视图进行缩放的方式。

2.2.3.2  Key Configuration(自定义快捷键)设置
    Blender允许用户自定义操作快捷键,修改时只需要单击对应快捷键组合旁边的Edit按钮,在下面的选项中更改鼠标和键盘的组合即可,如图2-13所示。
    Restore:重置按钮可恢复修改的快捷键至默认状态。下面菜单中的每一栏都是一个快捷键组合,单击左边的小三角可扩展这个菜单,菜单中就是当前功能的具体快捷键选项了。
    Keyboard:设置快捷键为单独的按键还是组合的按键。
    Mouse:可选择LMB、MMB和RMB动作,也可以与Ctrl和Alt等功能键组成组合键。
    图2-13  Key Configuration(自定义快捷键)设置面板
Tweak:设置拖拽动作,其中Text Input为键盘的输入控制。
    完成修改之后需要单击Save As Default保存设置,否则下次启动Blender时将重置你的设置。也可单击Export Key Configuration导出并保存快捷键的设置文件,同样也可以使用Import Key Configuration功能来导入已设置好的快捷键设置文件。

2.2.4  附加脚本设置
    Blender可使用Add-Ons来完成自定义的脚本功能,如图2-14所示为Add-Ons(附加脚本)设置面板,具体的脚本使用将在第11章中重点讨论。
    图2-14  Add-Ons(附加脚本)设置面板

 

2.2.5  主题设置
    在主题设置面板中,可以自定义Blender的界面,包括菜单颜色、字体大小和滑块透明度等如图2-15所示。Blender的UI修改是实时反应的,在修改设置的同时,就能立刻在主窗口中看到所做的改动了。
图2-15  Themes(主题)设置面板

 

2.2.6  文件系统
    在File(文件)系统面板中,可以设置一些常用的文件夹路径,例如字体库、材质库、渲染输出、音频库和脚本库等目录,如图2-16所示。合理的路径设置对工程管理很重要,它能更好地帮助你合理地设计和组织项目文件,协调团队合作。
    图2-16  File(文件)系统设置面板
2.2.6.1  Save & Load(存储与载入)设置
    Relative Paths:激活后Blender会在读取文件时自动使用相对路径。
    Compress File:激活文件压缩功能。
    Load UI:打开用户工程时,自动载入存储的用户界面布局。
    Filter File Extensions:启用文件浏览器中的文件类型过滤器。
    Hide Dot Files/Datablocks:隐藏以(.*)命名结构的文件和数据块。
    Hide Recent Locations:隐藏最近浏览的选项。
    Show Thumbnails:使用缩略图的方式打开图片或视频文件。

2.2.6.2  Auto Save(自动存储)设置
    Save Versions:设置自动保存的备份文件数量。
    Recent Files:设置显示最近打开的文件个数。
    Save Preview Images:是否保存图片的预览。
    Auto Save Temporary Files:是否激活自动存储功能,Timer是自动保存的间隔时间。

2.2.7  系统设置

    如图2-17所示为System(系统)设置面板。
    图2-17  System(系统)设置面板
2.2.7.1  General(常规)设置
    DPI:Dots Per Inch显示分辨率的设置,默认值为72DPI。
    Frame Server Port:允许调用的网络通信端口,默认端口为8080。
    Console Scrollback:控制台可显示的运行信息,默认可显示128行。
    Auto Run Python Scripts:设置是否自动运行Python脚本。
    Tabs as Spaces:设置是否自动将Tab输入转换为Spaces输入。

2.2.7.2  Sound(音频)设置
    SDL:Simple Direct Media Layer简易直控媒体层驱动,推荐应用于序列编辑。
    OpenAL:Open Audio Library跨平台音效API驱动,推荐应用于游戏引擎开发。
    Jack:Jack Audio Connection Kit开源专业音效平台,推荐应用于专业音频开发。
    Channels:输出音轨声道,最高可调节至7.1环绕声道。
    Mixing Buffer:设置混音的缓存大小,默认为2048。
    Sample Rat:设置采样率为44.1kHz到192kHz。
    Sample For:设置使用的采样格式,例如32位浮点式。

2.2.7.3  OpenGL设置
    Clip Alpha:设置纹理预览时边缘阈值的透明度。
    Mipmaps:开启后,可以优化贴图显示,但是会消耗一部分内存资源。
    VBOs:启用Vertex Buffer Objects顶点缓冲体,用于优化视图渲染。
    Window Draw Method:界面显示模式选项。
    Test Anti-aliasing:开启文字的抗锯齿优化显示模式。

2.2.7.4  Textures(贴图)设置
    Limit Size:是否使用贴图尺寸限制。
    Time Out:贴图在更新后的刷新时间。
    Collection Rate:贴图回收的刷新时间。

2.2.7.5  Sequencer(序列编辑器)设置
    Screen cast :预览视频的设置,调节窗口回放时的FPS帧数。
    Prefetch Frames:设置预览时预渲染的帧数。
    Memory Cache Limit:序列编辑器的缓存值设置。

2.2.7.6  Solid OpenGL lights(场景实时灯光)设置
    用于设置3D视图中实时灯光的颜色等属性,其中Diffuse用于设置散射光的颜色和方向,Specular则用于设置反射光的颜色和方向。系统默认只开启了两盏灯,也可以开启第三盏灯照明,达到自下向上的补光效果。如图2-18所示,左图为两盏灯下的模型预览,右图为三盏灯下的预览效果。
    图2-18  场景实时灯光效果
2.2.7.7  Color Picker Type(拾色器)设置
    这里用于设置不同类型的拾色器面板属性,如图2-19所示,从左至右分别是Circle、Square(SV+H)、Square(HS+V)和Square(HV+S)类型的拾色器面板。
    图2-19  不同类型的拾色器面板
Custom Weight Paint Range:自定义权重颜色的过渡色带。

 

2.3 窗口类型 Top

    Blender的界面可以任意切割出多个编辑窗口,每个编辑窗口拥有16种类型,每种类型都提供了不同的界面和功能。窗口标题栏最左边的小图标显示了当前窗口的类型,单击图标即可弹出编辑窗口的类型菜单,如图2-20所示。使用LMB选择指定的窗口类型即可。
    图2-20  编辑器窗口
2.3.1  三维视图
    3D View(三维视图)窗口是最常用的窗口之一,它用于显示当前所创建的3D场景,同时提供了大部分建模时使用的工具菜单和属性菜单,如图2-21所示。
    图2-21  3D View(三维视图)编辑窗口
2.3.1.1  Tool(工具)菜单
    以Object Mode(物体模式)为例,在窗口中单击快捷键T可以调出图2-21左侧的Tool工具面板,这里面包括了一些常用的建模工具,下面分别进行介绍。
    Transform:形变工具,包括Translate(变形)、Rotate(旋转)、Scale(缩放工具)。
    Object:物体工具,包括Duplicate(复制)、Delete(删除)、Join(合并工具)。
    Shading:着色预览工具,包括Smooth(平滑)、Flat(棱角工具)。
    Keyframes:关键帧工具,包括Insert(插入)、Remove(删除工具)。
    Repeat:历史工具,包括Repeat Last(重复最后动作)、History(历史动作工具)。
    Grease Pencil:画线工具,包括Draw(绘制)、Line(线条)、Erase(橡皮工具)。

2.3.1.2  Properties(属性)菜单
    在窗口中单击快捷键N可调出属性面板,这里包括了物体和视图的属性设置,如图2-22所示。
    图2-22  视图属性面板
Item:物体名称,可在文本框中对物体重命名。
    Transform:物体属性,包括Location(位置)、Rotation(转动)、Scale(比例)、Dimensions(尺寸)。
    View:视图属性,包括Lens(视图焦距)、Lock to Object(视图对物体锁定)、Lock to Cursor(视图对光标锁定)、Clip(动画区域属性)、Local Camera(默认使用的摄像机名称)、3D Cursor(指针属性)。
    Transform Orientations:坐标变换属性,包括Transform Ori坐标系切换等属性。
    Background Images:背景图属性,包括Add Image(添加新的背景图)等属性。
    Display:显示属性,包括Only Render(仅显示渲染物体)、Outline Selected(显示在大纲编辑器中选择的物体)、All Object Origins(显示所有物体的原心)、Relationship Lines(显示物体间的关系)、All Edges(显示所有的线框边)、Grid Floor(网格显示属性)、Shading(着色预览模式)、Toggle Quad View(快速划分视图)。
    Grease Pencil:视图绘制属性,包括Add New Layer(新建绘图图层)、Opacity(画笔不透明度)、Thickness(画笔粗细)、Onion Skinning(洋葱皮模式)、Frames(可见帧数)、Delete Frame(清除)、Convert(转换成网格物体)等选项。

2.3.1.3  View(视图)菜单
    如图2-23所示为3D视图窗口的View(视图)菜单。
    图2-23  3D视图窗口的标题栏菜单
Toggle Full Screen:将当前视图窗口最大化,快捷键为Ctrl+↑。
    Toggle Quad View:快速切分三视图,快捷键为Ctrl+Alt+Q。
    Duplicate Area into New Window:为当前窗口复制出一个新的窗口。
    Playback Animation:动画回放,快捷键为Alt+A。
    View All:将视图缩放至全部物体可见,快捷键为Home。
    View Selected:将视图转向所选物体,快捷键为Num .。
    View Global/Local:切换全局和本地查看,快捷键为Num /。
    Show All Layers:查看全部图层,快捷键为~。
    Zoom Border:视图缩放至框选区域,快捷键为Shift+B。
    Clipping Border:视图只显示框选区域,快捷键为Alt+B。
    Align View:视图排列方式,其中Align View to Selected为视图视角的对齐方式,如图2-24所示为视图转换方式的二级菜单,其中列举了各视图间相互转换时的快捷键。
    图2-24  Align View(视图排列)的二级菜单
Center Cursor and View All:将光标重置到原点位置,快捷键为Shift+C。
    Center View to Cursor:将当前视图切换至以光标为中心的缩放画面。
    Navigation:导航模式菜单,如图2-25所示为导航模式的二级菜单。其中,可以对视图做一定角度的视角旋转,快捷键分别为Num2、4、6、8。
    图2-25  Navigation(导航模式)的二级菜单
Fly Navigation:飞行预览模式,将镜头视图窗口切换至可飞行的预览状态,快捷键为Shift+F。
    View Persp/Ortho:透视图与正交视图间的切换,快捷键为Num5。如图2-26所示,左图为透视图的效果,右图为同一个视角下的正交视图效果。可以从网格的形状和物体的边缘角度,区分两种视图的差别。
    图2-26  透视与正交视图比较
Cameras:激活所选摄像机为默认的镜头视图,快捷键为Ctrl+Num0。
    Right:切换当前视图至侧视图视角,快捷键为Num3。
    Front:切换当前视图至前视图视角,快捷键为Num1。
    Top:切换当前视图至顶视图视角,快捷键为Num7。
    Camera:切换当前视图至摄像机视图视角,快捷键为Num0。
    Tool Shelf:调出工具菜单,快捷键为T。
    Properties:调出属性菜单,快捷键为N。

2.3.1.4  Select(选择)菜单
    如图2-27所示为3D视图窗口的Select(选择)菜单。
    Select Patten:使用输入查找来选取物体。如图2-28所示为输入物体名称Camera来查找当前场景中摄像头的结果。
图2-27  Select(选择)菜单图2-28  Select Patten(查找选择)效果    图2-29  Linked(相似选择)的二级菜单Linked:相似选择,快速选择拥有相同的材质、贴图或者粒子组等属性的物体,快捷键为Shift+L。如图2-29所示为相似选择方式的二级菜单。
    Grouped:群组选择,快速选择具有通用群组关系的物体。如图2-30所示为群组选择功能的二级菜单,可以使用这个功能快速地选择不同类型的子物体、父物体和同类型物体等,快捷键为Shift+G。
    Select Camera:快速选择当前默认的摄像机物体。
    Select All by Type:选择相同类型的物体。如图2-31所示,可以快速地选择同类属性的网格、曲线或者骨骼等物体。
图2-30  Grouped(群组选择)的二级菜单    图2-31  Select All by Type(相同类型选择)
的二级菜单            Select All by Layer:选择可视层中的所有可见物体。
    Mirror:选择当前物体的镜像命名物体,例如当前物体名为Cube.L,那么单击快捷键Shift+Ctrl+M,系统将自动选择场景中存在的物体Cube.R。
    Random:随机选择。
    Inverse:反向选择,快速选择当前未选中的其他物体,快捷键为Ctrl+I。
    Select/Deselect All:全选,快捷键为A。
    Circle Select:笔触选择模式,快捷键为C。激活后鼠标将变成一个圈,使用LMB做选择操作,MMB调节选择笔触的尺寸。
    Border Select:框选模式,快捷键为B。区别于笔触选取,该模式需要使用鼠标拖拽出一个矩形范围框。如图2-32所示为两种选择方式的区别,左图为Circle选择模式,右图为Border选择模式。
图2-32  Circle(笔触)选择和Border(框选)效果
2.3.1.5  Object(物体)菜单
    如图2-33所示为3D视图窗口的Object(物体)菜单。
    图2-33  Object(物体)菜单
Convert:类型转换,将曲线转换为网格物体。或者将网格转换成曲线物体。如图2-34所示为其二级菜单,快捷键为Alt+C。
    Show/Hide:隐藏被选择物体在视图中的显示,快捷键为H。如果要恢复被隐藏物体的显示,可使用快捷键Alt+H。如果要将未被选择的物体隐藏起来,可使用快捷键Shift+H。如图2-35所示为其二级菜单。
图2-34  Convert(类型转换)的二级菜单    图2-35  Show/Hide(显示/隐藏)的二级菜单Move to Layer:将物体移动到指定的图层,快捷键为M。
    Join:合并多个物体,快捷键为Ctrl+J。
    Join as UVs:复制目标物体的UV。
    Constraints:弹出约束创建菜单,快捷键为为Shift+Ctrl+C。如果要清除约束,快捷键为Ctrl+Alt+C。如图2-36所示为其二级菜单。
    图2-36  Constraints(约束创建)的二级菜单
Group:群组工具,如图2-37所示为其二级菜单。如果要将多个物体加入至新的群组,快捷键为Ctrl+G。将选择的物体从群组中移除,快捷键为Ctrl+Alt+G。将选择的物体添加到目标组当中,快捷键为Shift+Ctrl+G。将选择的物体从当前组中移除,快捷键为Shift+Alt+G。
    图2-37  Group(群组)的二级菜单
Track:建立跟随关系,如图2-38所示为其二级菜单,快捷键为Ctrl+T,取消跟随关系快捷键为Alt+T。
    Parent:建立父子关系,如图2-39所示为其二级菜单,快捷键为Ctrl+P,取消父子关系的快捷键为Alt+P。
图2-38  Track(跟随)的二级菜单    图2-39  Parent(父子)的二级菜单Make Single User:取消属性的复用。如图2-40的上图所示,两个物体分别被赋予了同样的材质,当选择物体Mesh.001并单击Make Single User后,材质将被取消复用,而被复制建立出一个新的材质,并被添加一个新的后缀名作为重命名,如图2-40的下图所示。
    Make Local:将物体本地化,常用于将从其他工程引用的物体独立化至本地工程,快捷键为L。
    图2-40  取消属性的复用
Make Dupliface:为当前物体建立一个镜像体。
    Make Links:建立链接关系,为物体在不同场景之间建立属性的链接关系,如图2-41所示为其二级菜单。
    图2-41  Make Links(建立链接)的二级菜单
Make Proxy:为当前链接的库物体建立一个本地空白数据对象。
    Delete:删除,快捷键为X。
    Duplicate Linked:建立关联复制,快捷键为Alt+D。在对Mesh使用关联复制后,物体的所有属性并没有被复制而是被链接至新的物体。如图2-42所示,可以从大纲管理器中看到,复制出的新物体Mesh.001依然使用了和原物体Mesh属性相同的子网格属性Mesh.004,这样当修改Mesh时,Mesh.001就会在相应属性上做出同步的更新修改。
    图2-42  Duplicate Linked(关联复制)效果
Duplicate:复制新物体,快捷键为Shift+D。与关联复制不同,在对Mesh做复制操作后,新的Mesh.001并没有继承原物体的属性,而是派生出一个新物体和属性,如图2-43所示。
    Delete Keyframe:清除关键帧,快捷键为Alt+I。
    Insert Keyframe:插入关键帧,快捷键为I。
    Snap:吸附功能,如图2-44所示为其二级菜单,快捷键为Shift+S,具体使用会在后面的Edit Mode(编辑模式)中讨论。
图2-43  Duplicate(复制)效果    图2-44  Snap(吸附)的二级菜单Apply:应用属性的修改,快捷键为Ctrl+A。如图2-45左图所示,新建一个Scale(缩放比例)默认为1的Mesh物体,接下来将其缩放为原来的一半大小,这时Scale变成了0.5,如图2-45中图所示。当单击Apply Scale应用属性之后,Scale属性将自动应用缩放的修改,把属性值重置为1,如图2-45右图所示。
    图2-45  Apply(应用)属性
Clear:它是与Apply(应用)相反的一个功能,用于清除对物体做的形变等操作。其中位移重置快捷键为Alt+G,转动重置为Alt+R,缩放重置为Alt+S,原点重置为Alt+O。如图2-46所示为Clear(清除)功能的二级菜单。
    Mirror:镜像工具,将当前物体按坐标轴做镜像变化,快捷键为Ctrl+M,如图2-47所示为其二级菜单。
图2-46  Clear(清除)的二级菜单    图2-47  Mirror(镜像)的二级菜单Transform:形变功能,如图2-48所示为其二级菜单,具体功能将在编辑模式中讨论。
2.3.1.6  Mode(模式)选择
    如图2-49所示,我们可以在3D视图中为物体选择不同的编辑模式。单击模式选择旁边的箭头即可弹出模式菜单,或者使用快捷键Tab做快速的切换。
    Object Mode:物体模式,用于对场景中Object(物体)执行编辑操作,例如移动和缩放等操作。
    图2-48  Transform(形变)的二级菜单
Edit Mode:编辑模式,用于编辑物体的本身,例如网格中的点线面调节等操作。
    Sculpt Mode:雕刻模式,用于对模型做雕刻操作。
    Vertex Paint:顶点喷绘,用于修改点与光影的交互影响效果。
    Texture Paint:贴图绘制模式,用于在3D视图中实时绘制物体的贴图。
    Weight Paint:权重绘制模式,用于为物体绘制权重。

2.3.1.7  Viewport Shading(光影预览)
    物体模式旁边的图标是Viewport Shading(光影预览)方式,如图2-50所示。
图2-49  物体模式类型    图2-50  光影预览模式菜单Bounding Box:开启范围框显示模式。
    Wireframe:开启线框显示模式,快捷键为Z。
    Solid:开启OpenGL显示模式,快捷键为Shift+Z。
    Textured:开启贴图显示模式,快捷键为Alt+Z。
    如图2-51所示,从左至右分别是同一个物体在不同光影下的显示效果。
    图2-51  不同的光影视图预览
2.3.1.8  Pivot(控制杆)选择
    光影预览的旁边是控制杆选择菜单,如图2-52所示为不同控制杆的属性菜单。
    图2-52  Pivot(控制杆)
          菜单控制杆的模式选择在建模和动画制作时很重要,可以从菜单选项中选择不同的控制方式,左侧的小图标形象地说明了不同选项下,控制杆和物体之间的位置关系。
    Bounding Box Center:将控制杆原心置于物体选择体的边框中心处。
    3D Cursor:将控制杆原心置于光标的位置。
    Individual Origins:将控制杆原心置于物体各自的原心处。
    Median Point:将控制杆原心置于多个物体的中央位置。
    Active Element:将控制杆原心置于最后一个激活的物体原心处。
    如图2-53所示,从左至右分别表示了不同模式下,控制杆原心在被控物体上的位置效果。
    图2-53  不同模式下控制杆的位置
Blender有三种不同类型的控制杆,单击标题栏上的按钮,可开启控制杆在场景中的显示。三种控制杆分别代表移动、旋转和缩放功能,如图2-54所示,从左至右分别为三种类型的控制杆在物体上的显示效果。
    图2-54  不同类型的控制杆
如图2-55所示为控制杆的显示模式菜单,菜单左边的4个小图标分别表示控制器的显示属性。右边的坐标菜单则图2-55  控制杆显示模式菜单提供了不同的控制器使用的坐标轴,包括Global(全局)坐标、Local(本地)坐标、Gimbal(万向)坐标、Normal(法向)坐标和View(视图)坐标。

2.3.1.9  Layer(层)选项

    Layer层工具是最常用的物体管理工具,它的工作原理和使用同Photoshop等软件的图层概念类似。可以将物体存放在不同的层上,用取消和选择的方式来隐藏和显示对应层上的物体,十分方便区分和管理较多物体的场景。如图2-56所示,Blender提供了20个层,分别由20个小方块来表示。
    Layer管理器中的每个方块都代表一个层。当一个层被激活时这个方块会显示为灰色,未被激活的层将显示为白色。方块中的圆点表示该层至少存放了一个物体,而使用橙色标识出来的圆点,表示当前被选择激活的物体所在层。在为物体指定层时,可以首先选择物体,然后使用快捷键M将其移动到目标指定层上。当层菜单旁边的小按钮被激活时,系统将自动使用当前场景层中的摄像机视角。

2.3.1.10  特殊编辑模式
    Proportional Editing(比例衰减编辑)工具可以辅助执行一些特殊的选择操作,当点击Enable激活选项后,如图2-57所示,旁边会出现一个衰减方式列表菜单。这里列举了Random(随机)、Constant(连续)、Linear(线性)、Sharp(尖锐)、Root(根部)、Sphere(球面)和Smooth(平滑)共7种衰减模式。在后面的章节中将详细讨论每一种选择模式下的使用方式。
图2-56  Layer(层)管理器    图2-57  Proportional Editing(比例衰减编辑)和衰减方式Snap(吸附)工具常在物体移动或对物体做精确变形时使用,如图2-58左图所示,在单击小磁铁图标后可激活吸附功能。吸附模式分为5种,分别是Volume(体积)、Face(面)、Edge(边)、Vertex(点)和Increment(网格)。在选择一种吸附方式后,还需要在旁边的菜单中选择对应的吸附目标,如图2-58右图所示,包括Active(激活的)、Median(正中的)、Center(中央的)和Closest(最近的)。紧接着在旁边有两个图标:表示是否应用目标物体的旋转角度,则表示将吸附映射到目标的表面上。
    标题栏上最右边的两个图标,分别表示OpenGL模式下的图片和动画渲染功能。功能被激活时,系统将使用场景灯光,实时地渲染当前窗口中的物体效果,如图2-59所示为OpenGL渲染效果。
图2-58  Snap(吸附)工具    图2-59  OpenGL渲染效果

2.3.2  时间轴窗口
    Timeline(时间轴)窗口,用于显示制作动画时使用的时间轴,如图2-60所示为Timeline(时间轴)窗口的界面。
    图2-60  Timeline(时间轴)窗口
可以滑动MMB修改时间轴上的显示范围,同时利用快捷键Ctrl+MMB对显示范围做缩放操作。时间轴上的绿线标识出了当前帧的时间位置,黄线标识了这一帧上建立有关键帧,单击LMB可以在轴上对时间做定位,将当前时刻指定至新的时间点位置。如图2-60所示的数字35标识了当前所在帧的位置,也可以手动输入以便在时间轴上快速定位。
    时间轴上的数字默认表示了帧数,Start(起始)选项可用于设置起始播放的帧位置,End(结束)选项则设置最后一帧的时间轴位置,使用快捷键Home可以在视图中显示全部帧范围。如图2-60所示,表示当前的播放范围是从第1帧至第250帧。超出了设置范围的时间帧,背景将会使用深灰色来显示。标题栏上的播放按钮用于控制动画回放。
    激活红色圆圈按钮可开启自动添加关键帧的功能,在对物体做移动或其他动画操作时,系统会自动在当前帧上添加相对应的关键帧,其中选项可用于设置添加的关键帧类型。

2.3.2.1  View(视图)菜单
    如图2-61所示为Timeline(时间轴)窗口中的View(视图)菜单。
    Bind Camera to Markers:将当前激活的摄像机与Marker帧标识符绑定起来,可用于制作多镜头之间的自动切换,快捷键为Ctrl+B。
    Only Selected channels:仅显示指定通道的时间轴属性。
    Show Frame Number Indicator:在时间轴上显示帧的数字。
    View All:自适应缩放显示从Start到End帧数的全部时间轴。
    Toggle Frames/Seconds:在时间显示方式秒和帧之间切换。

2.3.2.2  Frame(帧)菜单
    如图2-62所示为Timeline(时间轴)窗口中的Frame(帧)菜单。
图2-61  View(视图)菜单    图2-62  Frame(帧)菜单Auto-Keyframing Mode:自动添加/替换帧功能,作用与面板上的红色圆点按钮相同。
    Set End Frame:设置动画范围的End(结束)帧,快捷键为E。
    Set Start Frame:设置动画范围的Start(起始)帧,快捷键为S。
    Delete Marker:删除帧标识符,快捷键为X。
    Grab/Move Marker:选取和移动帧标识符,快捷键为G。
    Duplicate Marker:复制帧标识符,快捷键为Shift+D。
    Add Marker:添加帧标识符,快捷键为M。

2.3.2.3  Playback(回放)菜单
    Playback(回放)菜单定义了在动画回放中,参与动画效果的属性编辑器,如图2-63所示为Playback(回放)属性菜单,激活对应的编辑器,在其中修改的动画属性将显示在场景回放中。
    图2-63  Playback(回放)菜单

 

2.3.3  曲线图形编辑器
    2.5版本后的Blender采用了F-Curve曲线概念来管理物体的动画属性,这使得物体对象的网格、材质和灯光等所有可调节的参数,都可以通过控制其对应的F-Curve曲线来制作成动画效果。
      图2-64  Action与F-Curve的组成关系F-Curve是一个物体对象属性的最底层结构,也是动画物体之间可通用的基础属性结构。如图2-64所示,每一个F-Curve(曲线)都控制了一个物体的属性参数,例如物体在X轴上的位移,或者是在Y轴方向上的缩放比例等。一个物体的基本动画Action(动作),就是由多个F-Curve(曲线)封装组成,最终实现一个完整的动画。同时,不同的Action之间也可共享使用同一个F-Curve属性数据,称做属性的复用。
    Graph Editor(图形编辑器),就是用于控制和修改物体F-Curve曲线属性的编辑环境。如图2-65所示,在图形编辑器中,每种F-Curve(曲线)都被记录在一个独立的通道中,每个通道分别控制一个物体属性,例如X Scale表示了物体在X方向上的缩放值,Y Location为物体在Y方向上的位移等。
    图2-65  Graph Editor(图形编辑器)编辑窗口
由于通道较多,为了在编辑的过程中易于区分,每一个通道的曲线都设置为不同的颜色,也可以在窗口中单击快捷键N,对曲线颜色进行自定义修改。
    窗口中的横坐标为时间轴,纵坐标为属性参数值,当改变一个F-Curve曲线在某一个时间点上的曲线形状时,属性参数值就会被设置为该曲线点在纵坐标上的数值。曲线编辑器的具体使用将在第8章深入讨论。

2.3.3.1  View(视图)菜单

    如图2-66所示为Graph Editor(图形编辑器)窗口中的View(视图)菜单。
    图2-66  View(视图)菜单
Toogle Full Screen:将窗口最大化,快捷键为Ctrl+↑。
    Duplicate Area into New Window:为当前窗口复制出一个新的窗口。
    View All:自适应缩放至可见全部有效范围的帧,快捷键为Home。
    Jump to Frame:快速定位至某一帧,快捷键为Shift+Ctrl+S。
    Auto-Set Preview Range:自动设置预览帧的范围,帧范围由头尾两个关键帧的位置决定,快捷键为Ctrl+Alt+P。
    Clear Preview Range:清除预览帧范围,快捷键为Alt+P。
    Set Preview Range:自定义设置预览帧范围,快捷键为P。
    Toogle Frames/Seconds:时间轴在秒和帧之间做显示切换,快捷键为Ctrl+T。
    Only Selected Keyframes Handles:只显示被选择曲线点上的控制杆。
    Only Selected Curve Keyframes:只显示被选择的曲线。
    Show All Handles:显示全部控制杆,快捷键为Ctrl+H。
    AutoMerge Keyframes:自动合并最近的两个关键帧,适用于对曲线做自动清理。
    Show Sliders:在通道名的旁边显示属性框。
    Show Cursor:开启在曲线上显示十字形光标。
    Show Frame Number Indicator:在时间轴上显示当前帧数。
    Realtime Updates:启用曲线与场景的实时更新显示。
    Properties:弹出属性框选项,快捷键为N。

2.3.3.2  Select(选择)菜单

    如图2-67所示为Graph Editor(图形编辑器)窗口中的Select(选择)菜单。
    图2-67  Select(选择)菜单
Select Linked:选择相似,快捷键为L。
    Select Less:递减步进选择,快捷键为Ctrl+Num-。
    Select More:递增步进选择,快捷键为Ctrl+Num+。
    Between Selected Markers:选择帧标识符之间的所有控制点,快捷键为Alt+K。
    Columns on Selected Markers:选择当前激活帧标识符上的所有控制点,快捷键为Shift+K。
    Column on Current Frame:选择当前激活帧上的所有控制点,快捷键为Ctrl+K。
    Columns on Selected Keys:选择与当前关键帧在同一时刻的所有帧,快捷键为K。
    Border Axis Range:框选当前轴范围上的所有关键帧,快捷键为ALT+B。
    Border Select:关键帧框选,此时无法选中控制杆,快捷键为B。
    Border(Include Handles):关键帧带控制杆框选模式,快捷键为Ctrl+B。
    Invert Selection:反向选择,快捷键为Ctrl+I。
    Select All:全选,快捷键为A。

2.3.3.3  Channel(通道)菜单

    如图2-68所示为Graph Editor(图形编辑器)窗口中的Channel(通道)菜单。
    图2-68  Channel(通道)菜单
Collapse Channels:收起所有通道,快捷键为Num-。
    Expand Channels:展开所有通道,快捷键为Num+。
    Extrapolation Mode:曲线延长模式,快捷键为Shift+E,可选择Constant(常量型)和Linear(线型)模式。
    Set Visibility:隐藏除当前选择的其他所有通道,快捷键为V。
    Toggle Channel Editability:进入通道编辑模式,快捷键为Tab。
    Disable/Enable Channel Setting:关闭或开启通道选项,例如通道的可视化选项和编辑保护模式,快捷键为Alt+W和Shift+Alt+W。
    Invert Channel Setting:反转当前的通道设置,快捷键为Shift+W。

 

2.3.3.4  Key(帧)菜单
    如图2-69所示为Graph Editor(图形编辑器)窗口中的Key(帧)菜单。
    图2-69  Key(帧)菜单
Paste Keyframes:粘贴帧,快捷键为Ctrl+V。
    Copy Keyframes:复制当前帧,快捷键为Ctrl+C。
    Bake Curve:曲线烘焙操作,快捷键为Alt+C,烘焙后的曲线将删除所有的关键帧节点,但是保持烘焙前由节点调节出的曲率和形状,常用于精简动作的关键帧数据量。如图2-70左图所示为未烘焙的节点曲线;烘焙后,曲线将无法在关键帧位置做重编辑,如图2-70右图所示。
    图2-70  曲线Baking(烘焙)
Sample Keyframes:在两个关键帧区间,自动为每帧的位置上添加一个关键帧,快捷键为Shift+O。
    Clean Keyframes:清除关键帧,快捷键为O。
    Interpolation Mode:修改曲线的插值类型,快捷键为Shift+T。
    Handle Type:修改控制杆的类型,快捷键为H。
    Delete Keyframes:删除关键帧,快捷键为X。
    Duplicate Keyframes:复制关键帧,快捷键为Shift+D。
    Add F-Curve Modifier:为曲线添加修改器,快捷键为Shift+Ctrl+M,可选择的修改器包括,Generator(发生器)、Built-in Function(运算公式)、Envelope(封套形)、Cycles(循环型)、Noise(噪音)、Python(脚本控制)、Limits(极限)控制和Stepped(阶梯形)。借助修改器,我们可以制作出一些特殊形状的曲线效果,如图2-71所示。
    图2-71  F-Curve Modifier(曲线修改器)效果
Mirror:制作曲线镜像,快捷键为Shift+M。
    Snap:启用曲线的吸附编辑模式,快捷键为Shift+S。
    Transform:曲线的常用形变编辑菜单,包括,Grab移动,快捷键为G;Extend延伸,快捷键为E;Rotate旋转,快捷键为R;Scale缩放,快捷键为S。
2.3.3.5  模式菜单
    在Graph Editor图形编辑器窗口的标题栏上,可以看到一个模式菜单,如图2-72所示。
    图2-72  模式菜单
模式菜单用于选择在Graph Editor(图形编辑器)窗口中显示的属性类型,例如当激活Mesh(网格)属性,即可在编辑器中对于Mesh相关的属性做F-Curve(曲线)化操作。

 

2.3.4  动作编辑器
    调节F-Curve(曲线)是对属性的最底层修改,当我们制作物体运动或骨骼动画时,大量的曲线数据会让人眼花缭乱,也无法通过调节F-Curve(曲线)来修改动作。这时可以直接进入Dope Sheet(动作编辑器),将修改曲线的方式换做直接调节整个Action元素,将注意力只关注在当前调用的Action(动作)效果上。
    Dope Sheet(动作编辑器)可同时编辑多个Action(动作)关键帧,Summary(概述)功能提供了一个大纲显示方式,有助于观察多个Action叠加后的动作分布效果。Dope Sheet(动作编辑器)的界面和菜单与曲线图形编辑器界面十分相似,唯一不同的只有时间轴界面。如图2-73所示,窗口中横坐标为时间轴,纵坐标上的每一个通道代表一个物体的Action(动作)属性。当这一秒上被添加一个关键帧时,对应的属性通道时间轴中会新建一个小菱形,这个菱形就是Action(动作)块。移动和复制Action(动作)块不能修改内部各曲线的属性,但是可以宏观地观察当前帧上Action(动作)块的所有曲线效果。
    图2-73  Dope Sheet(动作编辑器)编辑窗口

 

2.3.5  非线性动画编辑器
    NLA(Non-Linear Animation,非线性动画编辑器)使用了非线性编辑原理,灵活地控制所有完成的Action(动作)体,用于制作连续的动画,如图2-74所示为NLA的操作界面。
    图2-74  NLA(非线性动作编辑器)操作界面
在Blender中,所有的属性和参数都能被制作成动画,这一切都归功于Blender使用的一种RNA数据结构,它令数据模块之间的链接更加灵活方便。NLA的具体使用方法将在第16章深入讨论。
2.3.5.1  动画模块之间的关系
    前面曾讲过,Action(动作)块是由多个F-Curve(曲线)控制的基本属性动画模块,那么Dope Sheet就是将多个Action模块组合成为一个Action(动作)体,而在NLA中每个基本编辑元素都是一个Action体,因此NLA可以被称为Blender动画编辑中的最顶层工具。如图2-75所示为Blender各动画模块之间的关系图。
    为了解释动画模块之间的关系和各工具在不同编辑层次上的应用,下面使用一个简单的例子详细说明。
    图2-75  Blender各动画模块之间的关系
例如需要制作一个完整的步行动画,其中脚尖的Z轴坐标就由一个F-Curve属性曲线来控制。首先在Graph Editor中对这个曲线做精确的编辑与定位,控制某一个瞬间其属性值的变化,也就是脚尖此刻在Z轴上的坐标位置。同时脚尖的其他属性,例如X轴和Y轴上的坐标数据,都将以通道的方式分别在Graph Editor上表示出来。
    脚尖在这一个瞬间的动作数据就是由多个F-Curve封装成的一个Action(动作)块,这个动作块包括脚尖的Z轴和Y轴上的坐标值等,这一切在Dope Sheet中将被表示为一个小菱形。脚尖从离地抬至最高位置到完成一个完整的迈步行走动作,需要多个Action(动作)块在时间轴上配合组成,这一系列动作变化称为Action(动作)体,在Dope Sheet中将被表示为一系列小菱形组。不同物体(例如,不同骨骼)在同一时间上的动作块将以通道的方式在Dope Sheet上分别显示出来。
    可以分别制作出行走的动作体和跑步的动作体,然后将这两个Action(动作体)导入至NLA中,使用自动插值原理计算出两个动作之间的过渡动作体,这样就十分轻松地生成一套人物从行走到跑步的完整Action(动作)。动作体在NLA中的编辑和Video Sequence Editor(视频编辑器)中对视频素材处理的方法类似,每一个动作体都将按照时间长度显示在NLA的时间轴上。由于NLA的这种非线性特性,它允许重复调用动作体素材,减少了对同一类型动作的多次重复制作。NLA中的通道表示了当前物体的动作体编辑轴,可以在一个通道上添加多个子动作体,例如放置行走动作体和跑步动作体,以及自动生成的过渡动作体图2-76  View(视图)菜单,而摄像机的动作体数据则将显示在同一个时间点上的另一个通道中。
2.3.5.2  View(视图)菜单
    如图2-76所示为NLA(非线性动画编辑器)窗口中的View(视图)菜单。
    NLA的View(视图)菜单同Graph Editor(图形编辑器)类似,请参考前文对后者的说明。在窗口中单击快捷键N,可调出NLA的动作体属性框,如图2-77所示。
    图2-77  NLA动作体属性
Animation Data:用于定义当前动作轴的通用属性。
    Active Strip:定义当前选择的动作体属性,包括命名、类型和播放帧数等。
    Active Track:定义了当前激活的通道名称。
    Action Clip:设置当前激活的动作体基本属性,例如重复播放的次数等。
    Evaluation:动作体的评估属性。
    Modifiers:与F-Curve(曲线)中的修改器类似,可以借助不同类型的修改器制作特殊的动作体。
      图2-78  Select(选择)菜单

2.3.5.3  Select(选择)菜单

    如图2-78所示为NLA(非线性动画编辑器)窗口中的Select(选择)菜单。
    NLA的Select(选择)菜单同Graph Editor(图形编辑器)类似,请参考前文对后者的说明。
2.3.5.4  Edit(编辑)菜单
    如图2-79所示为NLA(非线性动画编辑器)窗口中的Edit(编辑)菜单。
    图2-79  Edit(编辑)菜单
Start Tweaking Strip Actions:在Dope Sheet编辑页面中打开当前选择的动作体,快捷键为Tab。
    Move Strips Down/Up:在通道中移动Action(动作)体,快捷键为Page Down和Page Up。
    Clear Scale:清除对动作体的缩放修改,快捷键为Alt+S。因为这里缩小一个动作体,相当于快放了当前的动作。
    Apply Scale:应用对动作体的缩放,快捷键为Ctrl+A。
    Toggle Muting:暂停当前的动作效果,快捷键为H。
    Delete Strips:删除动作体,快捷键为X。
    Split Strips:切割动作体,快捷键为Y,切割点为鼠标指向的位置。
    Duplicate Strips:复制动作体,快捷键为Shift+D。
    Snap:启用吸附操作功能。
    Transform:常用的动作体控制选项,包括移动和缩放等,快捷键为G和S。
2.3.5.5  Add(添加)菜单
    如图2-80所示为NLA(非线性动画编辑器)窗口中的Add(添加)菜单。
    图2-80  Add(添加)菜单
Add Tracks Above Selected:添加动作体通道。
    Add/Remove Meta-Strips:合并或分解当前选择的多个动作体,如图2-81左图所示为合并前的多动作块,右图为合并后的动作体集。
    图2-81  Meta-String(动作体集)
Add Transition:为两个动作体之间添加过渡动作体,例如我们分别制作站立动作体和跑步动作体,可以使用Transition功能为两个动作之间自动生成过渡动作体,如图2-82所示,蓝色素材段为自动生成的过渡动作体。
    图2-82  Transition(过渡动作体)
Add Action Strip:添加动作体。

2.3.6  图片编辑器
    如图2-83所示为UV/Image Editor(图片编辑器)的窗口。
    UV/Image Editor图片编辑器常用于修改UV、绘制贴图和调整图片色彩等,它的初始界面很简单,当选择不同的模式时,界面将调用不同功能的选项和菜单。
    图2-83  UV/Image Editor(图片编辑器)编辑窗口(图片来自电影《Big Buck Bunny》)

 

2.3.6.1  View(视图)菜单
    如图2-84所示为UV/Image Editor(图片编辑器)窗口中的View(视图)菜单。
    图2-84  View(视图)菜单
Toggle Full Screen:窗口最大化,快捷键为Ctrl+↑。
    Duplicate Area into New Window:复制当前窗口到一个新的窗口。
    View All:自适应缩放到可查看全部内容,快捷键为Home。
    Zoom:缩放操作,快捷键为MMB。
    Scopes:弹出色彩范围图,快捷键为P。
    Properties:弹出属性菜单,快捷键为N,可查看当前图片的Histogram(直方图)等色彩参数。
2.3.6.2  Image(图片)菜单
    如图2-85所示为UV/Image Editor(图片编辑器)窗口中的Image(图片)菜单。
      图2-85  Image(图片)菜单Image Painting:开启绘制功能。
    Pack:将图片打包到工程文件中。
    Edit Externally:使用外置软件处理当前图片。
    Save As:另存为,快捷键为F3。
    Save:保存,快捷键为Alt+S。
    Reload:重载图片,快捷键为Alt+R。
    Replace:替换当前图片。
    Open:打开图片,快捷键为Alt+O。
    New:新建图片,快捷键为Alt+N。

 

2.3.7  视频序列编辑器
    如图2-86所示为Video Sequence Editor(视频序列编辑器)的窗口。
    图2-86  Video Sequence Editor(视频序列编辑器)编辑窗口(截图来自电影《Sintel》)
   
VSE是一款用于视频后期处理的非线性编辑器,编辑元素为视频、音频和图片文件,并支持特效添加。具体使用方法将在第10章中深入讨论。
2.3.7.1  View(视图)菜单
    如图2-87所示为Video Sequence Editor(视频序列编辑器)的View(视图)菜单。
    Transform Markers:允许编辑Marker时间轴的帧标识符。
    Safe Margin:启用安全框口查看模式。
    Show Frame Number Indicator:在时间标识上显示帧数指示器。
    Draw Frames:在标识指示器上使用帧数显示,而不是时间秒数显示。
    View Selected:显示所选。
    Fit preview in window/View all Sequences:自动缩放视图,使当前时间轴全部可见。
2.3.7.2  Select(选择)菜单
    如图2-88所示为Video Sequence Editor(视频序列编辑器)的Select(选择)菜单。
图2-87  View(视图)菜单    图2-88  Select(选择)菜单Right/Left Handle:选择当前素材段的左右控制杆。
    Surrounding Handles:同时选择素材段左右两端的控制杆。
    Strips to the Right/Left:选择当前激活素材段的左右相邻素材段。

2.3.7.3  Marker(标识符)菜单
    如图2-89所示为Video Sequence Editor(视频序列编辑器)的Marker(标识符)菜单,它的使用和Timeline(时间轴)中一致,请参考对后者Marker的描述。
2.3.7.4  Add(添加)菜单
    如图2-90所示为Video Sequence Editor(视频序列编辑器)的Add(添加)菜单,也可以直接在窗口中单击快捷键Shift+A,弹出添加素材物体的菜单。
图2-89  Marker(标识符)菜单    图2-90  Add(添加)菜单

2.3.7.5  Strip(视频段)菜单

    如图2-91所示为Video Sequence Editor(视频序列编辑器)的Strip(视频段)菜单。
    Swap Strip:素材段的相邻左右切换操作,快捷键为Alt+方向键。
    Snap Strips:启用吸附编辑,快捷键为Shift+S。
    Mute Deselected Strips:静默未选择的素材段,快捷键为Shift+H。
    Un-Mute/Mute Strips:使当前选择的素材段静默,快捷键为H,取消静默的快捷键为Alt+H。
    UnLock/Lock Strips:解锁/锁定当前素材段,使其可被/无法被编辑,锁定的快捷键为Shift+L,解锁的快捷键为Shift+Alt+L。
    Reassign Inputs/Reload Strips:重置当前输入的素材段。
    UnMeta/Make Meta Strip:将素材段群组成集,和NLA中用法类似,快捷键为Alt+M和M。
    Deinterlace Movies:影片帧速控制器。
    Separate Images:对图片类素材段做分割操作,快捷键为Y。
    Cut(soft/hard)at frame:切割视频素材段,快捷键为K。
    Grab/Move/Extend from frame:延长当前的素材片段,快捷键为E。
图2-91  Strip(视频段)菜单

 

2.3.8  文字编辑器
    Text Editor(文字编辑器)可用于书写文档、编写脚本程序,同时也是一款功能强大的Python IDE开发环境。如图2-92所示为Text Editor(文字编辑器)的界面。
    图2-92  Text Editor(文字编辑器)编辑窗口
2.3.8.1  View(视图)菜单
    如图2-93所示为Text Editor(文字编辑器)的View(视图)菜单。
    Bottom of File:跳跃至文本的底部,快捷键为Ctrl+End。
    Top of File:跳跃至文本的顶部,快捷键为Ctrl+Home。
    Duplicate Area into New Window:创建一个新的独立文本编辑窗口。
    Properties:调出属性面板,其功能与标题栏菜单相同,快捷键为Ctrl+F。属性中包括了Line Numbers(行数显示)、Word Wrap(自动换行)、Syntax Highlight(高亮标点符号)、Live Edit(实时编辑)、Font Size(字体大小)、Tab Width(缩进宽度)、Tab as Spaces(与空格同宽)、Find(搜索)等,如图2-94所示。
图2-93  View(视图)菜单    图2-94  文字Properties(属性)面板

2.3.8.2  Text(文本)菜单

    如图2-95所示为Text Editor(文字编辑器)的Text(文本)菜单。
    图2-95  Text(文本)菜单
Script Templates:脚本模板,如图2-95所示,文字编辑器中集成了一些基本的脚本模板,多用于游戏的Logic(逻辑)编写。
    Run Script:单击后可以运行编辑的脚本,快捷键为Alt+P。
    Save As/Save/Reload/Open/New:保存、打开和新建等常用的文件功能。
2.3.8.3  Edit(编辑)菜单
    如图2-96所示为Text Editor(文字编辑器)的Edit(编辑)菜单。
    图2-96  Edit(编辑)菜单
Text to 3D Object:将编辑文字转换为3D物体,快捷键为Alt+M。
    Find:查找功能,快捷键为Ctrl+F。
    Jump:快速跳跃至指定行,快捷键为Ctrl+J。
    Markers:标识符的编辑与查找选项。
    Select:选择操作,例如全选操作的快捷键为Ctrl+A。
    Paste/Copy/Cut/Redo/Undo:粘帖/复制/剪切/重复/撤销操作,快捷键分别为Ctrl+V,Ctrl+C,Ctrl+X,Ctrl+Shift+Z和Ctrl+Z。
2.3.8.4  Format(格式)菜单
    如图2-97所示为Text Editor(文字编辑器)的Format(格式)菜单。
      图2-97  Format(格式)菜单Convert Whitespace:将空格符转换为制表符。
    Comment/Uncomment:将当前选择列作注释和取消注释操作,快捷键为Shift+Ctrl+D。
    Indent/Unindent:对当前选择列作缩进操作,快捷键为Tab和Shift+Tab。

 

2.3.9  结点编辑器
    结点编辑器可对材质、纹理和渲染结果添加更多复杂的效果,具体使用将在第10章中做更深入的讨论。如图2-98所示为Node Editor(结点编辑器)的界面。
    图2-98  Node Editor(结点编辑器)编辑窗口
2.3.9.1  View(视图)菜单
    如图2-99所示,View(视图)菜单提供了一些常用的缩放和属性工具。
    图2-99  View(视图)菜单
View All:显示当前窗口中的所有结点,快捷键为Home。
    Properties:显示属性面板,快捷键为N。
2.3.9.2  Select(选择)菜单
    如图2-100所示为Node Editor(结点编辑器)的Select(选择)菜单。
    图2-100  Select(选择)菜单
Select Same Type Prev/Next:选择相邻的同类型结点,快捷键为Shift+[或Shift+]。
    Select Linked To:选择当前激活结点的输出结点,快捷键为Shift+L。
    Select Linked From:选择当前结点的输入结点,快捷键为L。
    Select/Deselect All:全选或取消全选,快捷键为A。
    Border Select:框选操作,快捷键为B。
2.3.9.3  Add(添加)菜单
    如图2-101所示为Node Editor(结点编辑器)的Add(添加)菜单,用于添加不同类型的结点。
    图2-101  Add(添加)菜单
2.3.9.4  Node(结点)菜单
    Node(结点)菜单提供了结点系统中的所有操作工具选项,如图2-102所示。
    图2-102  Node(结点)菜单
Show Cyclic Dependencies:显示独立的循环结构,快捷键为C。
    Toggle Hidden Node Sockets:将结点的参数面板收起,快捷键为Ctrl+H。
    Toggle Node Preview:将结点的预览面板收起,快捷键为Shift+H。
    Toggle Node Mute:屏蔽结点的功能效果,快捷键为M。
    Hide:隐藏当前选择的结点,快捷键为H。
    Group/Ungroup:为选择的结点建立群组,快捷键为Ctrl+G,解除群组的快捷键为Alt+G。
    Edit Group:编辑选择的群组,快捷键为Tab。
    Make and Replace Links:建立或者替换链接,快捷键为Ctrl+F。
    Make Links:在选择的两个结点之间建立连接关系,快捷键为F。
    Delete:删除结点,快捷键为X。
    Duplicate:复制结点,快捷键为Shift+D。
    Resize/Rotate/Translate:缩放、旋转、移动操作,快捷键为S/R/G。

 

2.3.10  逻辑编辑器
    如图2-103所示为Logic Editor(逻辑编辑器)的主界面,用于游戏的逻辑编写开发。具体使用将在第12章中重点讨论。
    图2-103  Logic Editor(逻辑编辑器)编辑窗口

 

2.3.11  工具面板
    Properties(工具)面板包括了所有的工具菜单和属性选项。如图2-104所示为工具面板上各图标所标注的功能子面板,使用LMB做切换操作。每个面板的具体使用将在后面章节中详细介绍。
    图2-104  Properties(工具)面板

 

2.3.12  大纲管理器
    Outline(大纲)管理器类似于操作系统中的资源管理器,它使用树形结构图来显示场景中物体间的层次关系,使用户可以更快地定位场景中的物体和其属性,更直观地处理物体与属性之间的关系。如图2-105所示为Outline(大纲)管理器的窗口。
    图2-105  Outline(大纲)管理器窗口
大纲管理器有多种视图模式,不同的模式分别用于显示不同属性物体之间的关系列表,例如Key Maps(快捷键列表)、User Preferences(参数)列表、Datablocks(数据模块)列表、Sequence(序列)列表、Libraries(库)列表、Groups(组)列表、Same Types(同类型物体)列表、Active(当前激活)物体的属性列表、Selected(被选择)物体的属性列表、Visible Layers(可见图层)的物体列表、Current Scene(当前场景)物体的属性列表、All Scenes(全部物体)的属性列表。
    在大纲管理器中,使用LMB来选择单独的列对象。如图2-106所示,在物体上单击RMB会弹出一个物体操作方式的菜单,包括Select(选择)、Deselect(取消选择)、Delete(删除)、Toggle Visible(使物体不可见)、Toggle Selectable(使物体锁定不可选)、Toggle Renderable(使物体不被渲染)。对于最后的三个功能可以分别使用对象旁的三个小图标来快速操作:小眼睛图标睁开代表物体可见,单击后小眼睛闭上则代表物体被隐藏;同理,旁边的箭头图标代表物体是否允许被选择编辑;相机图标代表渲染时物体是否可见。
    大纲管理器还有一个强大的功能——可以选择对象,并在场景中直接做拖拽添加和属性复用的操作。如图2-107所示,在物体模式下选择列表中的Cube物体,单击LMB按住Cube不放,然后往场景中直接拖拽,Blender会自动新建一个新的Cube复制对象出来,同时新的复制物体会被添加一个“.00X”的后缀。也可以对物体的属性做拖拽应用,例如,将一个材质拖拽到物体上进行快速的属性复用。
图2-106  物体操作菜单    图2-107  拖拽功能

 

2.3.13  信息窗口
    Info(信息)窗口面板提供了系统的主要通用功能和资源信息。如图2-108上图所示,分别为布局和场景选择菜单。如图2-108下图所示的Blender Render菜单包含了系统可供使用的渲染器,单击下拉菜单可从中选择所需要的渲染设置。标题栏右边的Ve表示了当前场景中物体的点数量,Fa表示了面数量,Ob:1-4表示场景中总共有4个物体,有1个处于选择激活状态,Merm:4.52M(0.76M)表示当前的内存使用情况,Cube则表示当前选择的物体名称。最右边的小箭头图标可切换画面至全屏操作,快捷键为Alt+F11。
    图2-108  Info(信息)面板
2.3.13.1  File(文件)菜单
    如图2-109所示为Info(信息)窗口面板的File(文件)菜单。
    图2-109  File(文件)菜单
New:新建一个工程,快捷键为Ctrl+N。
    Open/Open Recent:打开一个工程、打开最近建立的工程,快捷键为Ctrl+O。
    Recover Last Session/Recover Auto Save:恢复最近一次的工程、打开自动保存的工程文件。
    Save/Save As/Save Copy:保存、另存为和保存副本选项,快捷键分别为Ctrl+S、Shift+Ctrl+S和Ctrl+Alt+S。
    User Preferences/Load Factory Settings:用户设置界面,快捷键为Ctrl+Alt+U;初始化设置至出厂模式,快捷键为Ctrl+N。
    Link:用于在当前场景中Link链接其他工程文件,将物体导入使用但是禁止修改,快捷键为Ctrl+Alt+O。
    Append:直接导入其他工程文件中的物体,并允许对其做编辑等操作,快捷键为Shift+F1。
    Import/Export:Blender兼容3DS、DXF、OBJ、VRML等文件的导出和导入应用。
    External Data:修改工程文件中的打包文件,例如将贴图和运算数据等保存在工程中。
    Quite:退出,快捷键为Ctrl+Q。注意:Blender不会提示你是否确定退出,所以切记谨慎使用这个快捷键。
2.3.13.2  Add(添加)菜单
    Add菜单用于在场景中添加新的物体,这里的分类清晰明确。如图2-110所示,每种类别的菜单下都有添加物体的二级选项菜单,新添加的物体将出现在场景中的光标位置,快捷键为Shift+A。
    图2-110  Add(添加)物体菜单
2.3.13.3  Render(渲染)菜单
    如图2-111所示为Info(信息)窗口面板的Render(渲染)菜单。
    图2-111  Render(渲染)菜单
Render Image/Animation:渲染当前场景或动画,快捷键分别为F12和Ctrl+F12。
    OpenGL Render Image/Animation:快速渲染OpenGL图像或动画。
    Show/Hide Render View:显示或隐藏渲染窗口,快捷键为F11。
    Play Rendered Animation:动画回放,快捷键为Ctrl+F11。
2.3.13.4  Help(帮助)菜单
    Help(帮助)菜单提供了常用的帮助文档和信息链接,请读者自行参考软件列表。

 

2.3.14  文件浏览器
    当单击F1使用打开或浏览文件等功能时,Blender都会自动启动File Browser(文件浏览器),用于显示系统中的文件列表。如图2-112所示为File Browser(文件浏览器)的窗口界面。
    图2-112  File Browser(文件浏览器)窗口
文件浏览器的操作和管理方法与操作系统的资源管理器类似,其中按钮组可以使文件列表按照一定的顺序来排列,例如按字母、后缀名和文件大小等。也可以选择列表、详细列表和缩略图等不同的浏览方式。过滤器按钮组是一个文件类型过滤器,当开启后可以选择过滤掉一些不需要查看的文件,十分方便。

2.3.15  控制台窗口

    Console(控制台)窗口,用于显示系统的运行状况,同时也用于代码编译和调试,实时查看游戏脚本和逻辑运行结果等。如图2-113所示为Console(控制台)窗口的界面。
    图2-113  Console(控制台)窗口
Languages:切换命令行的语言输入格式,包括Python和Shell两种类型。
    Paste from/Copy to Clipboard:复制和粘贴操作,快捷键分别为Ctrl+C和Ctrl+V。
    Clear:清除当前界面中的所有输入。

 

第3章 建模 Top

    Modeling(建模)是在3D视图环境中利用点线面等工具创建出三维模型的过程,同时,建模也是整个CG(Computer Graphics计算机制图)制作流程中最基础的步骤。养成一个良好的操作习惯,并在制作的过程中保持清晰的布线思路,有助于快速而高效地完成建模工作,得到满足工程需求的模型。
    Blender提供了十分强大的建模工具集,包括常用的基本多边形工具和NURBS曲线高级建模工具等。对于初级的三维创建,主要使用默认的几何体,通过基本的挤压、切割和变形等操作方法,制作出复合造型。
    模型的质量决定了物体的最终视图效果,同时也影响了其应用性能。一个高质量的模型能够记录合理的设计数据,使模型在较少的多边形数目下,可以表现出非常复杂的造型,如图3-1所示。
    图3-1  高性能的模型结构可以表现复杂的动作细节

3.1 新建物体 Top

    Blender提供了十分丰富的基本物体,可以将其直接添加至场景中,通过修改操作来制作更复杂的物体模型。首先在Info(信息)标题栏的Add菜单中,可以找到所有基本物体的分类添加菜单,如图3-2所示。也可以在3D窗口中使用快捷键Shift+A,弹出添加物体的快捷菜单。
    图3-2  默认物体添加菜单

 

3.1.1  网格物体
    Mesh(网格)菜单包括了常用的网格物体,如图3-3所示,图中为常用添加的网格物体。
    图3-3  常用的Mesh物体
图中新建的Plane物体和Grid物体在物体模式下造型完全相同,它们之间唯一的区别就是,Grid是一个网格数为10×10的Plane物体。单击Tab进入它们的编辑模式,即可看到两者的区别。如图3-4所示,左图为Plane物体,右图则是Grid物体。
    图3-4  Plane物体和Grid物体的区别
Circle(圆)是一个可自定义节点数的封闭线段,在添加的时候可通过工具面板自定义其节点的数量,当线段的节点数较多时,Circle物体就会近似为一个圆形圈。如图3-5所示,从左至右分别是32个节点(默认)、8个节点和3个节点的Circle(圆)物体,其中Radius(半径)可初始化圆的半径大小,也可以单击Fill(填充)按钮来将新建物体的表面自动填充起来。
    图3-5  Circle(圆)
对于UV Sphere(UV球体),也可以自定义其初始化状态。如图3-6所示,从左至右分别是默认32瓣、12瓣和3瓣的球体,随着瓣值的降低,3瓣球已经完全失去了球体的球形特征。
    图3-6  UV Sphere(UV球体)
不同于UV Sphere(UV球体),Icosphere(Ico球体)的表面默认由20个三边形构成,初始化的参数为球体表面细分等级。如图3-7所示,从左至右分别是细分等级为1级、2级和0级的细分效果。可以将球体最高细分至500级,但是系统可能会因如此高密度的网格而出现崩溃。因为当细分达到10级时,球体将可能产生多达5242880个三边形,所以请慎用过高的细分等级参数。
    图3-7  Icosphere(Ico球体)

 

3.1.2  曲线物体
    Curve(曲线)菜单包括常用的Bezier贝济埃曲线、NURBS曲线和Path(路径),如图3-8所示。通常使用曲线物体来制作物体的运动路径,以及放样物体等。
    图3-8  Curve(曲线)物体

 

3.1.3  骨骼/空物体/摄像机物体
    Armature(骨骼)菜单提供了默认的标准人体骨骼,以及一些特定部位的关节骨骼。Empty(空)物体是一个无法编辑的坐标箭头,常被用于定位和对象控制等。Camera(摄像机)是渲染画面的取景窗口,它在3D环境中的摆放位置决定了渲染的视角。
    图3-9  骨骼、空物体和摄像机物体

 

3.1.4  灯光物体
    Lamp(灯光)菜单包含了所有类型的灯光物体,如Point(点光源灯)、Sun(日光)、Spot(聚光灯)、Hemi(半球灯)、Area(面光灯),如图3-10所示。
    图3-10  Lamp(灯光)类型
这里只介绍了一些常用的默认物体,其他新建类型的物体还包括Surface(曲面)、Metaball(变形球)、Text(文字)、Lattice(晶格)、Force Field(力场)、Group Instance(实例组)等。

 

3.2 编辑模式 Top

    Mesh(网格)也称做Geometry Polygon(几何多边形),是模型Object(物体)的基础属性之一。多边形物体是最常用的建模基本物体,同时,多边形建模也是最简单、易于入门的建模学习方式。
    Edit Mode(编辑模式)是在选取Object(物体)后,对其网格属性执行编辑操作的模式。单击鼠标右键选择所需要编辑的物体,然后在Mode面板中选择Edit Mode,即可进入该物体的编辑模式,也可使用快捷键Tab进入。如图3-11所示,为物体的编辑模式界面。
    图3-11  Edit Mode(编辑模式)界面
对比Object(物体)模式,编辑模式在标题栏处取消了层的选项,同时Select(选择)菜单更新了更多的功能,Object菜单也被Mesh(网格)菜单替代。在窗口中单击快捷键T可弹出左侧的工具列表,这里列举了部分基础的建模工具。单击快捷键N可在窗口右侧弹出属性菜单,这里列举了常用的显示设置和物体属性等。

 

3.2.1  点线面结构
    所有的Mesh(网格)结构都是由点、线和面三种基本的元素组成,它和曲线物体的结构不一样。Vertices(点)是网格的最基础元素,一个单独的点甚至不能被渲染出来。这里要区别点和Object(物体)的Origin(原心)概念,原心不是一个网格点,它是用来表示物体的存在,以及世界坐标系中物体初始坐标位置的一个属性点。从视觉上看,它比普通的Vertices(点)稍大,但是无法像点一样被选择,如图3-12所示。一个物体都必须有一个原心,但是一个物体可以不需要拥有任何点。在3D环境中添加一个点十分方便,首先必须切换至物体的编辑模式,使用快捷键Ctrl+LMB在任意位置单击即可,再次添加时,新的点会自动和前一个点组成一条Edges(边)。
    图3-12  Origin(原心)与Vertices(点)
Edges(边)又称为线,通常是由两个点连接而形成的线段。一条线段也不能被渲染出来,但是当多条线段通过缝合连接在一起时,就可以形成Faces(面)。Faces(面)是多边形网格中最小可渲染的单元,同时面也组成了多边形网格的物体表面。
    根据边数的不同,一个面可以分为Triangles(三边形)、Quadrangles(四边形)以及BMesh(多边形)三种类型。应该根据不同的应用场合选择合适的面结构。例如,游戏中就应多使用三边形,因为它的表面平整而且易于计算,不会出现交错的破面。四边形并不是任何情况下都能合理地在Blender中显示出来,因为规范的四边形只能在夹角都小于180度的情况下正常显示。如图3-13所示,当所选边夹角大于180度时,夹角外侧会出现古怪的黑色重叠效果,这样的面结构是不规范的,需要避免使用。
    图3-13  正确使用四边形
编辑模式为网格提供了点、线和面三种选择方式,单击按钮可以切换不同的选择操作模式,也可以使用Shift+LMB同时激活多种选择模式。在3D视图中,直接使用快捷键Ctrl+Tab也可以快速地切换选择模式。
    不同选择模式下的控制杆显示位置也会稍有不同。点模式下的控制杆会置于点中心的位置,如图3-14左图所示。线模式下的控制杆会置于线段中心的位置,如图3-14中图所示。而面模式下的控制杆会置于多边形的面中心位置,如图3-14右图所示。
    图3-14  点、线和面的三种选择方式

 

3.2.2  法线结构

    Normal(法线)不是一种实体线,它是一条垂直于曲线上节点和表面切线方向上的虚拟线,使用正负值来表示和区别多边形上面和点的法向参数,并且只有法线为正值的点和面在场景中才可见。一般来说,由内部指向外部表示当前位置的法线为正向,如果将表面翻转,也就改变了法线的方向。如果你的模型不是Double Sided(双面)显示的话,那么负法向的那一面将会在视图窗口中不可见,并且不可被渲染。
    如图3-15所示,在3D视图窗口中单击快捷键N调出显示面板,在Normals(法线)面板中选中Face(面)和Vertex(点)选项后,物体就会在面和点的法向上分别显示法线的方向。左边模型的法线完全一致,而右边的多边形由于部分面的法线被翻转了,所以无法在表面上看到负向法线值的面,同时这一块区域的多边形也由于无法正常显示变为黑色。
    图3-15  Normals(法线)显示面板

 

3.2.3  选择菜单
    如图3-16所示,为Edit(编辑)模式下的Select(选择)菜单,它提供了物体选择操作的所有功能。
    图3-16  Select(选择)菜单
3.2.3.1  常规选择模式菜单
    Region to Loop/Loop to Region:相邻面与边的相互切换选择模式。如图3-17所示,当选择两条连续的线条时,单击Loop to Region可自动选择它们之间相邻范围内的所有面,也可以使用快捷键Ctrl+E调出边选择菜单,右图为选择后的效果。同样,在一个面选择的情况下,使用Region to Loop功能可快速地选择当前面的外围边,如图3-18所示。
    图3-17  Loop to Region(由循环边选择面)
图3-18  Region to Loop(由面选择循环边)
Edge Ring/Loop:边的循环结构选择,快捷键为Ctrl+E。在一个循环面结构中,当选择任意边时,单击Edge Ring,系统会自动在当前的环面结构中选取相似排列的边,如图3-19所示。而Edge Loop可在选择一个边或者面的情况下,自动选择被选物体所在的全部循环边结构,快捷键为Alt+RMB,效果如图3-20所示。
图3-19  Edge Ring(环形边)选择
图3-20  Edge Loop(循环边)选择
Vertex Path:点路径选择,它可自动计算并选择两点之间最短距离路径上的所有点。如图3-21左图所示,首先任意选择两个点,然后单击Vertex Path功能,系统就自动计算并选择了两点之间的最短距离路径线条,如图3-21右图所示。
    图3-21  两点间的最短路径选择
Linked:选择被选点所在多边形上的所有连接面,当编辑模式中有多个分离多边形时,可以使用这个功能来选择分离的网格体,快捷键为L。如图3-22所示,在同一个网格物体的编辑模式下,场景中拥有两个分离的网格体,在左边的多边形上任选一个点,单击L后系统会自动选择整个相连的网格面,而右边的多边形由于未与左边的网格连接,所以不会被自动选择。
    图3-22  选择(相邻的所有点)
3.2.3.2  特殊选择模式菜单
    Mirror:镜像选择,选择目标为当前激活点在镜像坐标上的多边形。
    More/Less:步进递增或递减地复选被选择点的相邻多边体,快捷键为Ctrl+Num+/-。
    Similar:相似选择,快捷键为Shift+G,单击后可弹出选择菜单,如图3-23所示。可通过这个方法选择属性近似的同类多边形。
    图3-23  Similar(相似)选择
Loose Verts/Edges:选择场景中没有组成面的点和边。
    Quads/Triangles:快速选择场景中的四边形或三边形,这个功能仅工作在面模式下。如图3-24左图所示,当单击Quads按钮时,系统将自动选择多边形上所有的四边形,而圆心附近的三边形将不会被自动选择。如图3-24右图所示,则是单击Triangles后系统选择所有三边形的效果。
    图3-24  Quads/Triangles(四边形和三边形)的自动选择方式
Side of Active:自动选择区间上的所有点,例如X正轴方向的所有点。
    Linked Flat Faces:选择相连而且夹角相近的所有面,快捷键为Shift+Ctrl+Alt+F。如图3-25左图所示,任意选择一个面,单击Linked Flat Faces按钮后,系统将自动计算选择相连的所有同角度平面。如图3-25右图所示为选择的结果。
    图3-25  Linked Flat Faces(同角度面)选择
Sharp Edges:选择所有标识为Sharp的边。
    Random:让系统做随机选择。
    Inverse/Select/Deselect All:反选/全选/取消全选,快捷键为Ctrl+I和A。

 

3.2.4  网格菜单
    如图3-26所示,为Edit(编辑)模式下的Mesh(网格)菜单,这里提供了全面的建模操作工具。
    图3-26  Mesh网格菜单
3.2.4.1  Show Hidden(显示与隐藏)网格菜单
    Show/Hide:如图3-27所示,为隐藏显示的二级菜单。Show Hidden(取消隐藏),快捷键为Alt+H。Hide Selected(隐藏选择部分),快捷键为H。Hide Unslected(隐藏未选择部分),快捷键为Shift+H。
    图3-27  Show/Hide(显示与隐藏)菜单
隐藏功能常用于复杂模型的建模,或者高面数模型的雕刻过程。隐藏不需要的多边形可避免视觉上的遮挡,便于观察编辑对象,同时节约用于物体显示的内存。例如如图3-28左图所示,由于牙齿和嘴唇的遮挡,很难观察并且编辑口腔内部的结构。所以可以选中牙齿和嘴唇部分,单击快捷键H将它们隐藏起来,这样就可以方便直观地编辑口腔内部了,如图3-28右图所示。视图隐藏并不影响网格在渲染中的显示,可以使用取消隐藏功能来恢复视图中的显示。
    图3-28  Show/Hide(显示与隐藏)被选择的网格
3.2.4.2  Proportional Falloff(衰减)编辑模式菜单
    Proportional Editing Falloff:衰减编辑模式,功能同标题栏上的按钮,如图3-29所示。
    图3-29  Proportional Editing Falloff(衰减编辑)模式菜单
这里提供了7种衰减选择模式,分别是Smooth(平滑)、Sphere(球形)、Root(根部)、Sharp(尖锐)、Linear(线性)、Constant(约束)和Random(随机),菜单中的小图标也形象地说明了该模式在网格表面产生的形变效果。在正常模式下,选择一个点或者面做移动等形变操作时,不会对周围的点和多边形造成连带影响。但是当开启比例衰减编辑模式后,周围的多边形将会受到衰减模式和衰减范围的影响,产生相应的牵连变化,可以使用MMB来缩放控制衰减的影响范围。如图3-30所示,可以看到,即使只选择并移动一个点,网格在不同衰减模式下也会呈现不同的附加形变效果,从左至右分别是无衰减正常模式、Smooth、Sphere、Root衰减模式。如图3-31所示,从左至右分别是Sharp、Linear、Constant和Random衰减模式。
    图3-30  无衰减和Smooth、Sphere、Root衰减效果
图3-31  Sharp、Linear、Constant和Random衰减效果
3.2.4.3  Auto Merge(自动缝合)工具菜单
    AutoMerge Editing:自动缝合模式。有些时候边与边之间可能会出现点的重合情况,但是肉眼可能无法区别。重合点会对模型的后期处理,如UV解算和动画变形产生一些严重的影响。如图3-32左图所示,一个看上去很普通的6点矩形,中间却有两个重合点。因为这实际上是两个相邻的正方形,属性显示为Ve:1-8,说明当前网格上总共有8个点,如果未加仔细区分可能就会漏掉中间的这个空隙。为了确保没有点重合情况,可以先激活Auto Merge Editing功能,再对网格做编辑,这时系统会自动对这些重合的点做合并操作。如图3-32右图所示,属性显示为Ve:0-6,说明这个网格中已经没有重合点了。
    图3-32  AutoMerge Editing(自动缝合编辑)模式
3.2.4.4  Normal(法线)工具菜单
    Normals:法线工具,子菜单包括Recalculate Outside(法线向外),快捷键为Ctrl+N,Recalculate Inside(法线向内),快捷键为Shift+Ctrl+N,以及Flip Normals(翻转法线)。统一法线是为了能让网格上的相邻面在平滑后都能得到光滑的过渡效果,这样在渲染时才不会出现一些诡异的表面错误。检查法线是确认网格平滑的最基础方式,如果相邻面的法线没有统一在同一个方向上时,那么网格在平滑后,这个相邻位置会出现不平滑的过渡线条,如图3-33所示。
    图3-33  Normals(法线)不统一的表面效果
3.2.4.5  Vertices(点)工具菜单
    这里列举了所有与点相关的操作方式,点工具菜单如图3-34所示。
    Merge:合并,首先选择多个需要被合并的点,使用快捷键Alt+M,弹出选项菜单,如图3-35所示。这里总共有五种合并模式,At First(将多个点合并到第一个选择点的位置),At Last(合并至最后一个选择点的位置),At Center(合并到分布点的中央位置),At Cursor(合并到光标位置)和Collapse(折叠合并)。不同的合并模式决定了最后的合并点位置和效果。
图3-34  Vertices(点)工具菜单    图3-35  Merge(合并)模式Rip:剥离,将点从所处位置的相邻两个边之间分离开来,适用于点和线的操作,快捷键为V。效果如图3-36所示,选择一个点,对其做剥离操作并向左移动,原接口位置会被自动封闭起来。
    Split:分离,效果和Rip类似,但是只能用于分离面,快捷键为Y,效果如图3-37所示。
图3-36  Rip(剥离)工具    图3-37  Split(分离)工具Separate:将所选择网格分离出当前物体,创建为一个新的物体,快捷键为P,二级菜单如图3-38所示。
    图3-38  Separate(物体分离)工具
Smooth Vertex:点平滑功能。
    Remove Doubles:移除重合点操作。
    Blend from Shape/Vertex Groups:调节点在Shape(形变帧)和Vertex Groups(顶点组)上的变形过渡。  图3-39  Edges(边)工具菜单
Shape Propagate:将当前的形变过渡应用至其他形变帧中。
    Vertex Groups:顶点组,详细原理和应用将在后面重点讨论。
    Hooks:钩,和顶点组一样,用于将一部分点集合起来设置为钩。
3.2.4.6  Edges(边)工具菜单
    这里列举了所有与边相关的操作方式,如图3-39所示,为边的工具菜单。
    Subdivide:细分工具,当选择一条线条或者面时,执行细分操作,每一个线段都会被一分为二。如果这个边刚好处于某个多边形中,被细分出的连接点会自动与相邻的点缝合成多边形。如图3-40所示,是对一条边执行细分后的多边形重建效果。
    图3-40  Subdivide(细分)效果
Make/Clear Seam:制作缝合边,快捷键为Ctrl+E,常用于为UV解算做准备。
    Make/Clear Sharp:标记或清除硬边。
    Edge Slide:边滑动编辑模式,这是一个十分灵活的边调整工具,可以在表面上滑动修改被选择边的位置,而不会影响整个网格的造型。边滑动没有快捷键,只能单击Ctrl+E在边工具菜单中查找,如图3-41左图所示,调节的效果如图3-41右图所示。
    Edge Crease:褶皱工具,用于制作硬边的效果,快捷键为Shift+E。
图3-41  Edge Slide(边滑动)工具
3.2.4.7  Faces(面)工具菜单
    如图3-42所示,为面工具的二级菜单,这里列举了所有与面相关的操作方式。
    图3-42  Faces(面)工具菜单
Make Edge/Face:建立边和面的网格,快捷键为F。在几何体中,两个点能形成一个边,三个以上的点组成一个面。可以在选择多个点的情况下单击F,即可建立新的边和面。如图3-43所示,分别使用F将两个点建立出一个边,用4个点建立成了一个面。
    图3-43  Make Edge/Face(由点建立边和面)
Fill/Beautify Fill:自动建立完美的缝合面,在多个点的选择基础上,让系统自动生成封闭的面。缝合的原则是使用最少的连接线,所以也因此称为完美缝合,如图3-44所示,快捷键分别为Alt+F和Shift+Alt+F。
    图3-44  Fill/Beautify Fill(自动建立完美的缝合面)
Solidify:实体化工具,为平面多边形自动添加厚度。如图3-45所示,添加一个半圆物体,在全选的情况下单击Solidify(实体化),系统会在半圆的内部自动生成稍微小一点的网格圆,完成厚度的实体化操作,可以使用S缩放快捷键来调节新建的厚度。
    图3-45  Solidify(实体化)工具
Sort Faces:重排已选择的网格面,快捷键为Ctrl+Alt+F。
    Make/Clear F-gon:建立F封闭面,例如针对如图3-46左图所示的多边形,对其执行Make F-gon转换操作,网格将隐藏面上的边显示效果,如图3-46右图所示。
    图3-46  F-gon网格
Quads to Tris/Tris to Quads:三边形与四边形的互相转换,快捷键分别是Ctrl+T和Alt+J,如图3-47所示。
    图3-47  Quads to Tris/Tris to Quads(三边形和四边形)的互相转换
Edge Flip:边的方向反转工具。
    Shade Smooth/Flat:平滑/平坦多边形表面,转换效果如图3-48所示。
    图3-48  Shade Smooth/Flat(表面平滑与平坦)的转换工具
Rotate Edge CW:旋转毗邻边,在选择边时单击Ctrl+E,在菜单中使用CW做正向旋转,使用CCW做逆向旋转,如图3-49所示,从左至右分别为正常边结构、CW正旋一次和CCW逆旋一次的效果。
    图3-49  Rotate Edge CW(旋转毗邻边)工具
3.2.4.8  网格形变工具菜单
    Extrude Individual:挤压操作,快捷键为Shift+E。挤压操作是建模中最常用的命令之一,用于在原选定多边形的基础上扩展模型。如图3-50所示,分别为对点、边和面做挤压操作的效果,物体将会在原多边形的基础上向挤压方向扩展。
    图3-50  Extrude Individual(挤压)操作
Extrude Region:在法线方向上做挤压操作。
    UV Unwrap:UV解算,用于拆分模型的UV图,具体操作将在后面讨论。如图3-51所示,为UV解算操作的二级菜单。
    Snap:吸附功能,同标题栏的磁铁吸附功能。
    Mirror:镜像,用于将物体在对称轴上做镜像操作。如图3-52所示,为Mirror(镜像)的二级菜单。
    Transform:形变工具,包含了所有基本变形工具。例如,Grab/Move(移动),快捷键为G;Rotate(旋转),快捷键为R;Scale(缩放),快捷键为S;To Sphere(球形化),快捷键为Shift+Alt+S;Shear(错位),快捷键为Shift+Ctrl+Alt+S;Warp(弯曲),快捷键为Shift+W。如图3-53所示为Transform(形变)工具的二级菜单。
    Grab/Move:移动工具,用于移动被选多边形,如图3-54左图所示,使用RMB选择面,然后单击快捷键G即可做随意移动。如果使用G+X可将移动约束在X轴方向上,如图3-54中图所示,而使用Shift+X+G组合键可以将移动约束在垂直于X轴的YZ水平面上,如图3-54右图所示。配合Shift键可对物体做微移操作,而配合Ctrl键可使移动按固定距离做步进移动。
    Rotate:旋转工具,用于旋转被选择的多边形。如图3-55左图所示,使用RMB选择面后单击R即可做随意转动。如果使用R+X可将旋转约束在围绕X轴方向上,如图3-55图3-51  UV Unwrap(UV解算)菜单图3-52  Mirror(镜像)菜单图3-53  Transform(形变)工具菜单
中图所示。使用组合键Shift+Y+R可以将旋转约束在垂直于Y轴的XZ水平面上,如图3-55右图所示。和G移动操作类似,配合Shift键可以对物体做微旋操作,配合Ctrl键将使移动按固定距离步进旋转。
    图3-54  G移动的组合键操作
图3-55  R旋转的组合键操作
Scale:缩放工具,用于缩放被选择多边形。如图3-56左图所示,使用RMB选择面后单击S即可随意缩放。如果使用S+Y可将缩放约束在围绕Y轴方向上,如图3-56中图所示。Shift+Y+S组合键则将缩放约束在垂直于Y轴的XZ水平面上,如图3-56右图所示。使用Shift+S可微缩物体,Ctrl+S可将使移动按固定距离步进缩放。
    图3-56  S缩放的组合键操作
To Sphere:球形化工具,用于将多边形趋向于球体化变形。如图3-57左图所示,是一个正方形物体。当全选并使用Shift+Alt+S球形化操作,正方形将被变形并趋向转变成一个球体,效果如图3-57右图所示。物体的细分等级越高,球形化的效果越好。
    图3-57  To Sphere(球形化)工具
Shear:错位工具,可将多边形在一定方向轴上做错位变化。如图3-58左图所示,为一个初始状态的正方形,右图是使用Shift+Ctrl+Alt+S变化后的效果。
    图3-58  Shear(错位变化)工具
Warp:弯曲工具,能将所选多边形以光标为圆心做弯曲变化。如图3-59所示,为将左边的Cube物体做弯曲变化后的效果。
    图3-59  Warp(弯曲变化)工具

 

3.3 基础网格建模 Top

3.3.1  网格快捷工具栏
    在3D窗口中单击T可调出网格建模快捷工具栏,用于快速地选择常用的网格相关工具。这里主要包括:  图3-60  快捷工具栏菜单Transform(变形类)、Deform(形变类)、Add(添加类)和Remove(移除类)工具等选项,如图3-60所示,为工具栏菜单。
    Transform(变形类)工具包含了Translate(移动工具),快捷键为G;Rotate(旋转工具),快捷键为R;Scale(缩放工具),快捷键为S。
    Deform(形变类)工具包含了Edge Slide(边滑动工具)、Rip(剥离工具)、Noise(噪点工具)以及Smooth Vertex(点平滑工具)。
    Add(添加类)工具包含了常用的网格扩展和修改工具,如Extrude Region/Individual(挤压工具),快捷键为E;Subdivide(细分工具),快捷键为W;Loop Cut and Slide(环切工具),快捷键为Ctrl+R;Duplicate(复制工具),快捷键为Shift+D,以及Spin(旋转挤压工具)和Screw(螺旋工具)。
    前面已经简单介绍了挤压、旋转和缩放工具。其中挤压工具可以将边挤压成面,再将面挤压成体,挤压也因此成为建模中使用最频繁的工具之一。配合选取和移动G功能,在对多边形完成挤压操作后,可以使新建的多边形随鼠标做自由移动。
    环切工具Ctrl+R能对物体做自定义切割,并在原物体基础上细分出更多的多边形。旋转R和缩放S没有创建多边形的作用,但是常被用于对多边形做形态上的调整。

 

3.3.2  平滑工具
    多边形是网格物体的基础,但是在默认状态下多边形会保持平整的状态,边缘没有平滑的过渡,如图3-61左图所示,这样的模型在渲染后,效果将如图3-61右图所示。为了让模型在渲染时看上去更光滑,需要对其做一些平滑处理。
    图3-61  未平滑的多边形和渲染结果
首先在物体的编辑模式下,全选所有的面,单击W后就能看到两个平滑选项,Shade Smooth(着色器平滑)和Smooth(平滑)。如图3-62上图所示,  图3-62  两种平滑的对比效果为选项菜单。前者能在保留模型细节的基础上,利用着色器计算来平滑多边形的表面,使其看上去完全光滑,而后者是直接平滑掉多边形的棱角,在物理层面上降低两个面之间的夹角角度,如图3-62下图所示,分别为两种平滑后的渲染效果。
    可以看出,Shade Smooth后的物体并没有丢失模型细节,因为着色器计算并不会改变物体本身的物理属性,而是从视觉上对物体做了平滑处理。但是物体在Smooth操作后,整个模型的尖锐轮廓都被打磨掉了,这时系统直接在网格结构上做出了修改,减小了面之间衔接边的夹角角度,但是面与面之间的不平整尖锐过渡依然存在。
    Blender也提供了Auto Smooth(自动平滑)的功能,在编辑模式下进入Object Data(物体数据)面板,图3-63  Auto Smooth(自动平滑)选项找到Normals(法向面板),钩选Auto Smooth(自动平滑)选项后,调节下面的角度数字即可,如图3-63所示。开启自动平滑功能的物体不会修改网格本身的显示,而是会在渲染中自动地对夹角小于所填度数的棱角做平滑处理,这里的角度数字越大越能得到一个良好的平滑渲染效果。

 

3.3.3  使用关联复制实现镜像建模
    在制作一些角色或特殊模型时,需要使用同步的对称式建模。前面曾介绍过关联复制,接下来就简单讲解如何使用关联复制来实现对称化建模。首先在物体模式中单击Shift+C定位光标至原点,然后单击Shift+A添加一个Plane物体,单击Tab键进入其编辑模式。全选网格后向X轴正向移动一定距离,然后退出至物体模式,如图3-64左图所示。接着单击Alt+D对物体做关联复制,不做任何改变时直接松开鼠标,单击N键进入属性菜单,在Scale中将X改为-1,如图3-64右图所示,被关联复制的物体将以原心为轴,被镜像移动至X轴的负方向。
    图3-64  关联复制后镜像物体位置
再次单击Tab键进入原物体的编辑模式,由于镜像物体的关联属性,我们对原物体的任意编辑都将同步至新建的镜像模型上,效果如图3-65所示。
    图3-65  对称建模

 

3.3.4  螺旋和细分工具
    建模中还有两个较常用的工具——Screw(螺旋)和Subdivide(细分)工具。Screw工具常用于制作螺旋形的物体,Subdivide则能将所有物体一分为二。接下面先了解一下Screw的用法。
    在物体模式中添加一个Circle物体,按Tab进入编辑模式,如图3-66左图所示。接着单击R+X+90,Circle则在X轴方向上旋转了90度,如图3-66右图所示。
    图3-66  使用数字键输入来旋转物体
在正视图视角中,新添加一个线段,并将光标定位在如图3-67左图所示位置。接着单击Add菜单中的Screw,Blender将以光标为原心,以线段方向为轴生成一个螺旋体,调节Steps和Turns等参数,即可得到如图3-67右图所示效果。
    图3-67  Screw(螺旋)工具
Subdivide(细分)有两种模式,一种是标准的细分模式,而另外一种是在细分的同时对物体做平滑处理。如图3-68左图所示,针对于一个标准的Cube物体,使用Subdivide(细分)一次后,物体表面将被划分为2×2的网格,二次细分后则被划为4×4的网格,效果如图3-68中图所示。如果对同样的物体使用Subdivide Smooth 2次,物体不仅会被细分,同时还将会平滑掉所有的棱角边,效果如图3-68右图所示。
    图3-68  Subdivide(细分)效果

 

3.3.5  精确切割工具
    Knife Cut(精确切割)工具能在建模中对多边形表面做自定义的划线切割,快捷键为K。如图3-69所示,在一个标准Plane上,按住K+LMB时鼠标会变成一个小刀形状,在平面上滑动鼠标即可切出任意切割线,完成后松开LMB确定,系统会自动根据切割点对多边形进行细分重建。
    图3-69  Knife Cut(精确切割)工具
精确切割的前提是切割面必须处于被选择状态。在T工具菜单中可以找到属性选项。切割工具提供了三种切割方式:Midpoints将保留切割点在边的中心位置,Multicut允许在切割线时,使用键盘数字键输入切割线的数量,Exact则可精确地划分出切割点的位置。如图3-70所示分别为三种切割方式的效果。
    图3-70  三种切割方式

 

3.3.6  基本建模工具的配合使用范例
    下面简单地通过一个小例子来讲解挤压等基础建模工具的应用。
    首先在物体模式中单击Shift+A,添加一个Cube(正方形),如图3-71左图所示。然后单击Tab进入其编辑模式,按A全选所有点,使用S缩小正方体,如图3-71右图所示。
    图3-71  添加基础物体
使用组合键Ctrl+Tab调出选择模式菜单,切换至Face(面)选择模式,如图3-72左图所示。然后使用RMB选择顶上的面,按G+Z向Z轴正上方移动一定的距离,如图3-72右图所示。
    图3-72  拉伸正方体
松开鼠标后,按Ctrl+Tab切换回点模式,单击Ctrl+R在立方体水平面上拉出一个环切线,单击一次LMB后,滑动鼠标向Z轴上方移动到如图3-73左图所示位置。接着重新回到面模式,使用Shift+RMB选择侧面的两个面,单击E后松开鼠标,然后再单击S+Y向Y轴方向做水平缩放操作,效果如图3-73右图所示。
    图3-73  继续缩放
使用Shift+RMB选择Y负轴一侧的3个平面,按E+G+Y向负轴方向挤压一定的距离,如图3-74左图所示。同理,挤压Y轴正方向的3个面,松开鼠标后再单击R+X,将平面在X轴上做一定的旋转,如图3-74右图所示。
    图3-74  挤压和旋转
单击Ctrl+Tab进入点选择模式,选择顶上的点,按G+Z做一些水平调整,如图3-75左图所示。最后按Tab退回到物体模式,一个小榔头就做好了,效果如图3-75右图所示。
    图3-75  小榔头成品
接下来再次进入编辑模式,使用小键盘的Num7转换到顶视图视角,然后单击LMB将光标定位到如图3-76所示位置,按A全选小榔头,在工具菜单中单击Spin,榔头将围绕光标做旋转复制。
    图3-76  旋转复制
这时系统自动生成了9个小榔头,并且以光标为原心旋转了90度。在旁边的属性面板中修改这一默认设置,将Steps(步进)修改为11,Degrees(角度)设置为360,这样11个小榔头则自动围着光标排列成一个圆圈,效果如图3-77所示。
    图3-77  自定义Spin效果

 

3.4 高级网格建模 Top

3.4.1  顶点组
    Vertex Group(顶点组)是在一个多边形物体中,将网格上的一部分选择点编辑成特定的组,用于定义属性或功能在当前物体上的作用影响范围。例如在梳理毛发、绘制软体和设置多材质时,常会使用顶点组来划分出物体上不同的作用区域。如图3-78所示,对人头添加粒子毛发制作胡子时,希望粒子效果范围只影响下巴的区域,那么可以将这部分的点选中并编辑为一个Jaw顶点组,接着在粒子毛发面板中将粒子作用范围指向这个顶点组即可。
    图3-78  Vertex Group(顶点组)
顶点组又像书签一样,能帮助你在物体上快速标记出一部分点集合。复选择一部分的点或面后,在Vertex面板中单击十字星即可添加一个新的顶点组,使用Assign(指派)功能也可将这些网格分配到已有的顶点组。面板中的Select(选取)功能,能快速高亮选择模型中被标注的顶点组集合,反之Deselect能取消选择。
    在编辑模式中也常使用顶点组来辅助建模,例如在制作一个乐高模型时,可以将乐高零件分别用顶点组作命名归类,然后通过选取顶点组的方式来选择物体,并通过复制操作来快速地制作模型。
    顶点组的另外一个功能就是它在蒙皮和骨骼中的应用,如果需要指定一块骨骼去驱动一定范围内的网格,那么可以将这部分网格定义到一个顶点组,然后将其指向到对应的驱动骨骼即可,这些会在第8章详细讲解。

 

3.4.2  权重绘制
    权重绘制常与顶点组配合起来使用,用于控制顶点组的影响衰减范围。
    Weight paint(权重绘制)以渐变的色彩来标识顶点组对属性值的影响强度,常用于平滑顶点组之间的过渡。不同的颜色区分了不同等级的深度值,深度阶度图如图3-79所示,其中蓝色代表权重值为0,也就是说当前网格将不受任何外界属性影响。越接近红色的权重值越大,最右边的红色权重值为1,表示网格将完全接受属性参数对其的影响。如果在顶点组之间叠加地绘制上权重值,则可以为顶点组间的影响效果提供一个缓冲的过渡效果。
    图3-79  权重值的色彩阶度图
Weight Paint(权重绘制)模式可以从物体模式中单击Ctrl+Tab快速进入,进入界面后,网格将显示为权重的色彩深度图。单击T调出权重工具面板,如图3-80所示,就可以使用笔刷直接在物体表面上为当前顶点组绘制权重值了,例如在顶点组之间的交界处绘制出平滑的过渡权重值。
    图3-80  Weight Paint(权重绘制)模式编辑窗口
笔刷面板中,Weight(权重)表示了当前绘制的权重值,可以通过滑动滑块来改变值大小。当Auto Normalize选项被钩选后,绘制区域内对应骨骼的顶点组将被自动设置影响深度为1。Size(尺寸)参数可修改笔触大小,调节快捷键为F。Strength(力度)参数控制绘制的笔触力度,调节快捷键为Shift+F,单击后通过滑动MMB来改变大小。如果激活旁边的符号,Blender将使用手绘板的笔尖压力感应来自动调节绘制力度。

 

3.4.3  雕刻模式
    Sculpt Mode(雕刻模式)是一种特殊的建模方式,它允许在模型上使用类似雕塑的操作,通过笔刷来模拟刻刀,调整模型的形体并增加更多细节。要对物体执行雕刻就需要进入雕刻模式,同权重模式一样,可单击Ctrl+Tab快速进入,也可在模式菜单中选择。如图3-81所示,为雕刻模式的界面。
    图3-81  Sculpt Mode(雕刻模式)编辑窗口
雕刻前需要对模型做多级细分,使用足够的网格数才能表现出雕刻后的细节。但是系统会由于面数的增加而运行缓慢,为了优化雕刻环境,可以在操作过程中,使用快捷键Alt+B来做框选隐藏,如图3-82左图所示。如果要恢复显示,只需要使用快捷键Alt+B即可。
    图3-82  隐藏部分网格优化雕刻性能
3.4.3.1  Brush(笔刷)菜单
    雕刻模式下有几种常用笔刷,如图3-83所示,为笔刷菜单。
    图3-83  Brush(笔刷)菜单
Blob:球体笔刷,它可以在物体表面添加球状凸起,如图3-84所示,为Blob笔刷的作用效果。
    图3-84  Blob(球体)笔刷
Clay:黏土笔刷,能制造一种敷上泥土的感觉,用于增加表面的凸起结构,如图3-85所示。
    图3-85  Clay(黏土)笔刷
Crease:折痕笔刷,用于制作清晰的折痕边缘效果,如图3-86所示。
    图3-86  Crease(折痕)笔刷
Fill/Deepen:填充笔刷,可以将凹槽的部分填充起来,填充水平面根据物体的基础面而定,如图3-87所示,为Fill填充后的效果。
    图3-87  Fill/Deepen(填充)笔刷
Flatten/Contrast:展平笔刷,按照凹凸的高低计算出一个平均高度面,然后将这部分高低面按照平均高度整理成水平面,如图3-88所示,为展平一部分高低面后的效果。
    图3-88  Flatten/Contrast(展平)笔刷
Grab:移动笔刷,模拟一种抓取的动作,来改变模型的结构,和编辑模式中的移动功能类似,效果如图3-89所示。
    图3-89  Grab(移动)笔刷
Inflate/Deflate:膨胀笔刷,可以使被选中的顶点膨胀起来。不同于Draw笔刷使顶点表面直接突起,Inflate的效果更类似于将整个顶点按法向方向突起,效果如图3-90所示。
    图3-90  Inflate/Deflate(膨胀)笔刷
Layer:层笔刷,可以按照固定的力度抬高或者降低模型的表面,这个值由笔刷力度决定,如图3-91所示,为Layer笔刷的效果。
    图3-91  Layer(层)笔刷
Nudge:扭转笔刷,用于制作一种旋转的扭曲效果,如图3-92所示。
    图3-92  Nudge(扭转)笔刷
Pinch/Magnify:捏挤笔刷,可以将顶点周围的面向内捏挤,制作出坚硬的边缘效果,如图3-93所示。
    图3-93  Pinch/Magnify(捏挤)笔刷
Polish:抛光笔刷,将表面打磨平整,如图3-94所示,为将一部分凹凸面打磨后的效果。
    图3-94  Polish(抛光)笔刷
Scrape/Peaks:削刮笔刷,可以将凸起的模型削掉,如图3-95所示,为刮去一部分凸起面的效果。
    图3-95  Scrape/Peaks(削刮)笔刷
SculptDraw:刻画笔刷,可以在表面上绘制一段突起效果,目的是让顶点向外凸起,如果按住Alt可以绘制向下凹的效果,如图3-96所示。
    图3-96  SculptDraw(刻画)笔刷
Smooth:平滑笔刷,可将模型表面的尖锐或不平整部分光滑掉,如图3-97所示,为平滑后的效果。
    图3-97  Smooth(平滑)笔刷
Snake Hook:蛇钩笔刷,用于在表面拉出渐细的挂钩效果,如图3-98所示。
    图3-98  Snake Hook(蛇钩)笔刷
Thumb:指推笔刷,模拟一种用手指在表面推动黏土的效果,如图3-99所示。
    图3-99  Thumb(指推)笔刷
Twist:扭曲笔刷,制作出扭曲的翻转效果,如图3-100所示。
    图3-100  Twist(扭曲)笔刷
Size:笔刷尺寸,用于控制笔刷的影响范围,快捷键为F,单击后只需要滑动MMB即可灵活地改变画笔大小,也可使用键盘输入数字来精确控制画笔大小。
    Strength:笔刷强度,控制着笔刷在模型上的动作力度,较高的数值可以为模型添加较大幅度的变化,也可以使用组合快捷键Shift+F来改变笔刷的强度。
    Add/Sub:凸起和凹陷效果,用于控制笔刷的影响模式。
    Accumulate:堆积模式,激活后允许点在凸起位置产生堆积的效果。
3.4.3.2  Stroke(绘制)菜单
    Airbrush:喷枪,当处于激活状态时,单击笔刷会持续添加雕刻效果,直到松开鼠标,快捷键为Shift+A。当关闭时,笔刷对物体的改变将没有持续效果,只有Grab笔刷不能使用喷枪功能。
    Anchored:表面映射,允许在表面上拖拽出纹理的形状,效果如图3-101所示,快捷键为A。
    图3-101  Anchored(表面映射)效果
Space:间隔,用于控制笔触间的间隔距离,值为1时笔刷绘制的是连续不间断的效果。
    Dots:开启Smooth Stroke(平滑绘制),用于实现一种自动平滑的效果。其中斜度选项定义了笔刷是否跟随画笔的移动,自动调整材质图案的角度,这个功能不适用于3D纹理。
3.4.3.3  Curve笔刷的曲线菜单
    在Curve菜单中可以添加和使用自定义笔刷,这里使用曲线来描述不同的笔刷形状,如图3-102所示,为使用不同的曲线笔刷制作出的特殊雕刻效果。
    图3-102  使用Curve曲线自定义笔刷的形状
3.4.3.4  Texture(纹理)菜单
    在这里可以为笔刷添加不同的纹理效果,分别有Fixed(固定)、Tiled(平铺)和3D效果三种模式,分别用于控制纹理的映射模式,如图3-103所示,为分别使用三种模式添加的自定义笔刷效果。其中Angle(角度)选项可以用来调整纹理的旋转角度,快捷键为Ctrl+F。
    图3-103  笔刷的纹理映射方式
3.4.3.5  Option(选项)菜单
    Unified Setting:统一所有笔刷的尺寸和强度值。
    Lock:轴锁定选项,可以屏蔽在对应坐标轴上做的改变。
    Show Brush:显示笔刷,使笔刷大小在绘制过程中可见。
    Fast Navigate:快速导航,当移动或者转动网格时,系统将自动转换网格为低分辨率预览,用于提升视图转换时的显示性能,效果如图3-104右图所示。
    图3-104  Fast Navigate(快速导航)模式
Symmetry:镜像选项,当选择对应的坐标轴X、Y或Z后,对模型所作的雕刻变化将对应地出现在镜像坐标上。

 

3.5 曲线建模 Top

    曲线和曲面也是一种Object(物体),区别于多边形等网格物体,它们在空间中的表达方式略有不同,曲线是一定数量的矢量线段组合,而网格更像是一系列的点的集合。Blender中集成了Bezier(贝济埃)曲线、NURBS(Non-Uniform Rational B-Spline,非统一有理B样条)曲线和Surface(曲面)。
    和网格使用“控制杆”的编辑模式不同,曲线和曲面使用的是“控制点”来修改线条。控制点采用了数学有理表达式的控制方式,它具有精确表现二次曲线和二次曲面的能力,可以制作出一些复杂的曲面造型和特殊效果。但是并不是所有的造型都适合由曲线来表现,一些有明显棱角边的物体并不适合使用曲线来制作。
    由于曲线使用了较少的数据量来控制物体结构,因此在建模的时候它们可以在消耗较少内存的情况下,表现出极好的视图性能和预览效果。但是在曲线的渲染阶段,系统会对曲线模型做一定的数据转换,所以渲染的时间会稍有增加。

 

3.5.1  曲线的编辑
    和网格的编辑方式类似,扩展曲线上的控制点即可延长曲线长度,使用快捷键E并结合G可在选择点上挤压出新的节点,如图3-105所示。但是,如果同时选择多个点,挤压功能将会失效,所以对曲线的扩展只能在单个点上执行。
    图3-105  曲线的控制与扩展
如果需要封闭一个曲线段时,只需要单击快捷键Alt+C,系统就会自动缝合曲线的两端,如图3-106左图所示。如果是2D的曲线,可以单击F将线段连接起来,曲线将自动建立起封闭面,并且在渲染中可见,如图3-106右图所示。
    图3-106  Cyclic(封闭曲线)效果
3.5.1.1  Shape(外形)面板
    如图3-107所示,为Shape(外形)的控制面板。
    图3-107  Shape(外形)控制面板
2D/3D:2D选项状态下的曲线只允许在平面上执行编辑操作,系统将自动锁定其垂直方向上的坐标控制杆。开启3D选项后,曲线才可在三维空间中做自由变换。
    Resolution:解析度,线段的解析度决定了线段的疏密度。曲线可以被看作是一条连续的线段,因此解析度越高的曲线线段看上去越平滑。当解析度较低时,曲线将失去弧线的形态,变得趋于线性化。如图3-108所示,从左至右分别是解析度为1、3和9的曲线效果。
    图3-108  不同解析度的曲线平滑度
Twisting:扭转,用于设置曲线扭转时,样条法线的方向。
    Fill:用于封闭曲线扩展后的多边体,其中Front将封闭正面,Back可封闭背面,Fill Deformed则封闭应用Shape(形变)和修改器后的曲线。
    Textures:自动调整曲线物体在赋予纹理后的坐标空间。
3.5.1.2  Geometry(几何结构)面板
    Modification:修改曲线的立体结构,其中Width(广度)用于控制曲线在原心范围内的缩放效果,Extrude(挤压)参数能将曲线扩展成平面,如图3-109所示。
    Bevel:倒角,能为挤压出平面的曲线物体添加倒角效果,如图3-109所示,分别为其添加一定的挤压和倒角效果,其中Resolution(解析度)参数值越大,倒角越平滑。
    图3-109  Extrude(挤压)与Bevel(倒角)效果
Taper/Bevel Object:锥化/倒角模式,Taper可以将当前曲线圈围绕另一个曲线轴放样形成一个锥化物体,Bevel则可以将倒角模式应用到当前的曲线物体上。例如,添加一个圆作为曲线物体的直径形状体,再添加一条曲线来控制物体的锥化形态。这时就可以分别通过对base和taper的修改控制,来调整当前曲线物体的形状,效果如图3-110所示。
    图3-110  Taper/Bevel(锥化)与(倒角)模式
3.5.1.3  Path Animation(路径动画)面板
    Frames:定义了路径动画的帧范围。
    Follow:启用跟随动画效果,适用于物体使用曲线为运动路径的动画。
    Stretch:启用拉伸效果,适用于物体的变形动画。
    Radius:使用曲线的法线半径来影响路径的跟随动画效果。
    Offset Children:使子物体与路径保持一定的偏移量。
3.5.1.4  Active Spline(活动样条曲线)面板
    Cyclic:将曲线的首尾在U坐标上自动连接,封闭起来。
    Resolution:表面解析度,该值越高,对应曲线的扩展面越平滑。如图3-111左图所示,为U值为5的效果,而右图为U值增大至30的效果,可以看到网格的细分数明显增多。
    图3-111  曲线的Resolution(表面解析度)
Interpolation:定义了曲线的插补属性,可分别选择Tilt(倾角)和Radius(半径)两种控制模式。
    Smooth:用于平滑曲线的放样表面。

 

3.5.2  Bezier曲线
    Bezier贝济埃曲线由线段和控制节点组成,其中节点是可拖动的控制支点,用于调整曲线的形状变化。Bezier曲线不仅可用于建模,也常在动画模块中使用,提供精确的控制路径等数据。在3D窗口中新添加一个Bezier曲线,单击Tab进入编辑模式。如图3-112所示,为一个初始化状态的Bezier曲线线段,左边的工具栏显示了一些常用的曲线工具。曲线中的点H就是控制杆,C是曲线的控制节点,节点间的B就是曲线线段,线段上的箭头方向代表曲线的法线方向和线条密度。
    图3-112  Bezier曲线
对控制杆和节点的选择方式,和网格中对点的选择方式一样,单击RMB选择后即可对其做相应的形变操作,例如使用快捷键G做移动,使用快捷键S做缩放,使用快捷键R做旋转。这里控制杆有4种控制模式。
    Auto Handle:自动模式,控制杆能根据曲线当前节点自动调整长度和方向,辅助制作出平滑的曲线效果。控制杆此时呈黄色,快捷键为Shift+H,效果如图3-113左上图所示。
    Vector Handle:矢量模式,在这种模式下曲线将被调整为矢量的线段形态,控制杆变成绿色,快捷键为V,效果如图3-113右上图所示。
    Align Handle:连续模式,这时控制杆将始终处于节点的切线方向位置,曲线呈现连贯的弧度,控制杆呈红色,快捷键为Shift+H,效果如图3-113左下图所示。
    Free Handle:自由模式,控制杆在这种模式下互相独立,可自由旋转,可使用快捷键H来转换,控制杆呈黑色,效果如图3-113右下图所示。
    也可以使用工具菜单中的Handles(控制杆)选项,来修改当前控制杆模式,如图3-113左侧所示。
    图3-113  Handle(控制杆)模式

 

3.5.3  NURBS曲线
    NURBS曲线发展于20世纪50年代,它由那些希望在车体或船壳表面上使用精确的自由曲面数学表达式的工程师们所发明,它最大的特点就是曲线数据可以被任何技术精确地复制出来。现在,NURBS已经被广泛应用于计算机辅助设计,并成为了工业标准的一部分。
    Blender中的NURBS曲线是由带比重控制的向量节点集合组成,与Bezier曲线的最大区别就是,它的控制方式采用了权重值来定义控制点和曲线顶点之间的距离,因此更趋近于一条完美的曲线。NURBS上的节点决定了对应曲线段上点分布的局部密度,所以调节NURBS曲线的控制点权重就可以直接改善一条曲线的形状。
    组成一个NURBS曲线段的最少控制点数目等于一条曲线的Order(阶数)加1,再加上控制点的数目。其中曲线的Order(阶)涉及产生曲线的数学公式中的高次幂指数,因此,曲线的Order(阶)越高,产生该曲线所需要的计算量也就越大。一阶曲线相对应于一条直线段,二阶曲线相对应于一条二次曲线,而三阶曲线则相对应于三次曲线。曲线的阶数越高,曲线段所需要的控制点也就越多。
    在创建NURBS曲线之前,一定要把曲线的阶数和跨度等原理掌握清楚,它们是产生一条“完美”曲线的决定性因素。如图3-114左图所示,在Blender中添加一个新的NURBS线段,默认的曲线为Uniform(均衡控制),这时的曲线在开放的末端不容易定位,解决的方法是激活Endpoint(端点)控制,这时曲线的两端将始终吸附在控制点的末端,如图3-114右图所示。
    图3-114  曲线的Endpoint(端点)控制方式
Order(阶)是NURBS曲线用于定义弧度的重要参数之一,如图3-115所示,左边为2阶曲线,右边为4阶曲线的效果。Blender提供了2到6阶数的选择范围,低阶的曲线近似于线性化,高阶的曲线弧度将相应地增加。
    图3-115  曲线的Order(阶)控制
Weight(权重值)决定了曲线控制点的影响力,节点的权重范围可以由0.1至最大100,越高的权重越能表现更强的控制约束。如图3-116所示,分别对右下角的点设置权重值为20和100,可以看出权重值影响了点与点之间的作用力,拥有高权重的控制点可以产生更大的曲线密度。
    图3-116  曲线的Weight(权重)控制

 

3.6 文字建模 Top

    Blender的文字输入工具简单快捷,只需要按住Shift+A键在弹出菜单中选择Text物体即可。单击Tab键进入文字的编辑模式后,使用键盘的退格键消除默认的字符,即可输入新的文字了。

 

3.6.1  文字的输入
    如图3-117所示,进入文字的编辑模式后,标题栏菜单将出现Text(文字)菜单,可以在Special Characters(特殊符号)菜单中快速找到一些常用的特殊符号。如果是大量的文字,可以将文字保存在txt文本文档中,单击Paste File打开文件即可自动导入已录好的段落文字。
    图3-117  文字输入菜单

 

3.6.2  文字的编辑与修改
    在文字编辑模式下,可以在编辑菜单中找到文字的编辑面板,如图3-118所示。
    图3-118  文字编辑面板
3.6.2.1  Shape(外形)菜单
    Resolution:解析度,数值越低,文字看上去越尖锐,反之越平滑。
    Display:开启Fast Editing显示功能,可以在编辑的时候取消文字的自动填充效果。
    Fill:文字的扩展显示,同曲线选项类似。
    Textures:纹理选项,用于自动调整文字物体上的纹理空间。
3.6.2.2  Geometry(几何造型)菜单
    Modification:修改曲线结构,Width(广度)值用于控制文字的粗细缩放效果,Extrude(挤压)值则能将文字扩展成立体。
    Bevel:倒角参数,能为挤压出立体效果的曲线物体添加边缘倒角,Depth(深度)值控制倒角的宽度,而Resolution(解析度)越大,倒角越平滑。如图3-119所示,为添加了倒角和厚度的文字物体效果。
    图3-119  文字物体的几何造型
3.6.2.3  Font(字体)菜单
    可以为输入的文字选择特定的字体文件,单击旁边的文件按钮,选择系统中的字体“*.font”文件即可。使用Size可调节文字的大小,使用Shear可设置文字倾斜的角度。
    Underline:添加下划线效果,其中Position用于控制下划线的位置,Thickness调整下划线的粗细。
    Character:字体效果,这里标示了三种字体效果——Bold(加粗)、Italic(斜体)和Underline(下划线)。
3.6.2.4  Paragraph(段落)菜单
    Align:段落排列,这里有常用的5种排列方式,其中Left为左对齐,Center为置中,Right为右对齐,Justify为两端对齐,Flush为两端留边对齐。
    Spacing:间距,用于控制字符之间的间距距离。
    Offset:偏移,控制段落与对齐轴之间的偏移量。
    至此,已经介绍了大部分常用的物体建模工具,除此之外,Blender还提供了Surfaces(曲面物体)和Meta(变形球物体)等建模方式,但是在一般的工作项目中,这些物体并不常用,所以感兴趣的读者可以自行研究一下。

 

  • 大小: 281 KB
  • 大小: 295.9 KB
  • 大小: 316.8 KB
  • 大小: 359.7 KB
  • 大小: 227.2 KB
  • 大小: 235.2 KB
  • 大小: 164.4 KB
  • 大小: 270.8 KB
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

文章信息

Global site tag (gtag.js) - Google Analytics