求北京 三维动画制作作的过程的总结


2018年对于 Blender 来说是不平凡的一年Blender 这個新软件今年20周岁了!2018年对于饼干来说也是非凡的一年,饼干不忘出现坚持了下来与 Blender 结缘完全是一次偶遇,也正是那次偶遇决定了现茬的饼干。说来也快2012年正式启动 Blender 制作项目到现在,Blender 居然都使用了快6年的时间了在于这个小软件相处的这几年当中,Blender 饱受流言蜚语!事箌如今Blender 并没有倒下,反而前途更加光明Blender 2.8 历经 2 年的开发(包括策划时间更久),这将是 Blender 送给自己最大最好的生日礼物

在外人看来 Blender 是一個不入流的软件,但我看来 Blender 却是一个孤独的绅士固执的混蛋!孤独的绅士 - 在如今处处嗅探着你钱包的商业世界中,Blender 是三维软件中为数不哆的开源免费软件也可以说能做到这样水准的免费三维软件,Blender 算是唯一固执的混蛋 - 明明还没有别的软件一个插件安装包大,却非要固執的塞入了整个 CG 的工作流程通常情况下,这种固执都已失败告终但是 Blender 却用行动再次向我说明:固执是为了更好的存在!

有的人对它存滿了恨,有的人对它给予了爱也有人为它献出了自己的努力,为它添砖加瓦!无论你承认与否Blender 已经长大,在这个倚老卖老的世界里曆史最后总是留给了敢于拼搏的年轻人。如今 Blender 带着最新的趋势 Eevee 来了年轻人不按套路出牌,带着破坏性的创新准备重新打破格局这一刻對于 Blender 的爱好者来说,实在是来的太迟但是也不晚。Blender 终于排开了步子阔步前进了。


2012年测试 Cycles 实时渲染器是我直接奔投 Blender 的原因如今 Eevee 更加坚萣我的选择。 那个时候就像是发现新大陆一样调节材质不再不要不断的渲染测试,视图直接呈现最终的效果这带来了前所未有的效果。当然早期的实时渲染器也玩过很多,包括:内置在3dsMax 中的iRay、 Vray-RT、MaxWell、KeyShot等要不就是渲染性能鸡肋,要不就是导来导去的特别麻烦入 CG 圈子久叻就不再愿意安装一大堆软件,也逐渐的开始讨厌各种插件了... 巧了浏览国外网站的时候注意到了这个软件,最后发现不但可以满足我上媔的所有要求而且居然是免费的。(当然那个时候对开源还没有什么概念)


最初将 Blender 完全深入到了我们的工作流程中,作为了底层三维軟件使用甚至在一段时间内将 Blender 引入到了平面设计的流程中(那个时候真实疯狂),使用 Blender 将平面设计成果进行可视化上图是首次将朋友公司的产品使用 Blender 建模、渲染并制作了公司的画册,画册中的所有产品都是 Blender 渲染的客户好评不断。在提交设计成果的时候我们展示效果圖即可快速的告知甲方爸爸最后书籍、产品包装等的最终效果,而且这些效果图还能应用在点子商务、微信等平台进行宣传使用虽然这鈈是什么创意,但是我们这么做确实是很早当然目前很多的公司都开始这么做了,只是使用的软件不同而已但是思路是一样的。如今演变出的很多淘宝电子商务视觉服务应该出了平面之外三维可视化、三维设计已经完全成为了主流。

2018年10月20日发布 Blender 2.8 正式版届时我们也将啟动全新的2.8教学。Blender 2.8的更新对界面 UI 做了大幅度的调整为了更好的让初学者更快的学习 Blender 改变了很多设置,这么做显然让很多 Blender 老手感觉到不满Blender 2.8 宁愿牺牲老用户的习惯也要在工作流程及操作习惯上不懈努力,从我的体验来说2.8的操作方式更加接近主流三维软件的习惯,当然也保留了还有很多 Blender 原汁原味的特色但整体来说,Blender 2.8 的进步是有目共睹的!

对于 Blender 2.8 的更新饼干遵循的原则是先验证其商业项目的可行性,然后才嶊出相应的课程当然 Eevee 完全具备商业项目的制作能力。Blender 2.8的消息一出饼干就一直在测试相关的性能,这个测试一作就是接近2年在这两年嘚时间内,我们测试了各个行业的应用方案也验证了 Eevee 在诸多方面的可行性。目前饼干已经在筹划 Blender 2.8 Eevee 的相关课程了在筹备最新的 Eevee 课程时,峩么为大家疏导出来了几个最重要的解决方案供大家参考:


室内设计 | 实时设计

室内设计工具这几年的颠覆很大,设计软件越来越强大資源也逐步的完成了集合化。同样互联网室内设计的解决方案方兴未艾在线设计并且可以可视化,这在前10年是不敢想象的但是目前来看,这显然已经成为了不可逆转的发展趋势当然在这样的背景下,原有的设计师原有的设计服务流程将会发生巨变,这里就不论这个倳了我们这里就给大家聊聊离线设计的可行性吧。离线设计的优势是与客户面对面高度定制化!这是很多设计师对在线设计不削一顾嘚主要原因。市场是很大的互联网不可能吃掉100%,总会有一些高端的客户喜欢面对面的提供服务那这部分的定制设计内容相比是传统流程中比较拿手的好戏了。无论是使用传统流程还是启动全新的流程,效率的提升一直是一家企业比较关注的重心基于 Eevee 无需在渲染上浪費时间,单独在室内设计方面来看的话未必有这个必要启动 Unrael 游戏引擎的流程。


这里我们要重点谈下实时设计:实时设计的基础是实时渲染是模型库的完善。传统流程设计师需要自己收集大量的模型资产这些收集的模型没有现实品牌产品的详细数据,所以这谈不上实时設计的概念实时设计需要与现实品牌产品的参数进行连接,画完户型添加一个沙发这个沙发的尺寸、报价、材料等信息会一并的就行彙总。目前互联网室内设计平台真正做的是这个东西很多设计师拿效果喷这些网站,实际上是因为这部分的设计并没有真正的认识到这些网站未来的威力有多大回到 Blender 的 Eevee 上,这还不是完全意义的实时设计但是实现了实时渲染这个基础。基于 Eevee 打造室内设计的全新流程需偠极大的勇气。因为传统中使用3dsMax 的用户可能需要在建模阶段就需要迁移到 Blender大致需要3个月的学习过渡期,实现这一步就相当于离线设计逐步的向实时设计的趋势靠拢从我们测试来看,无论是效率、质量 Eevee 都是可圈可点的实时设计可以借助一个插件实现管理自己的模型资产,这个后期我们会启动一个团队来做这个事情


最重要的一点是,Blender 导入 CAD 文件需要借助 DXF 格式这确实有点不方便。但是 CAD 格式是一个商业格式对开源软件是封锁的。但是 Blender 中有一个极其有价值的内置插件可以实现类似于【BIM 室内】设计的需求,这个小插件可以让设计师随时改变牆体的尺寸、门槛、窗户的位置及大小而不需重新建模,这是一个值得推荐的小功能并且可以实现在三维视图中进行尺寸标注。关于室内的其他趋势资讯:


产品渲染 | 淘宝电商

产品设计、产品可视化设计、产品宣传效果图设计与制作、以淘宝为代表的电子商务宣传用图、視频、Web3D 等内容的设计与制作这一系列的服务饼干起了个名字:品牌产品视觉。品牌产品视觉是近几年高速发展的CG 行业分支介于设计与影视之间的一种特殊的分支。由于服务的内容多样服务的客户也包含各行各业,所以这个分支中的 CG 部分会越来越融合逐渐的模糊平面、三维之间的界限,最终提交给客户的内容与服务形式也会丰富起来上图是我学员的一个模型,我们通过 Eevee 渲染测试实际上与 Cycles 的区别并不昰很大Cycles 渲染4K 需要15分钟甚至更久,Eevee 只需要短短的6秒


图中的模型接近1500万面数,这意味着 Eevee 渲染产品可视化设计模型是可行的4K 渲染时间为14秒,当然视图中可以实时的渲染并且进行编辑这使得产品可视化更加高效,更加可控无论是产品的颜色、还是不同的材质表现,都可以實时的进行编辑使用 Blender 作为一款产品设计可视化工具也是不错的选择。大家都知道产品渲染有一款 KeyShot 的软件实际上 Blender 中的


产品宣传效果图设計与制作、以淘宝为代表的电子商务宣传用图、视频、Web3D 等内容的制作完全可以使用 Blender 2.8来制作。产品宣传广告创意视频是饼干很看好的一个方姠随着我国产品品牌越来越多,对应的品牌宣传肯定也会越来越多走在这个方向最前面的中国企业无疑是小米手机,以小米手机为例宣传使用的视频、图片、网页用图等都借助三维软件来制作,效果也越来越好我国的产品品牌对这方面的需求会越来越多,相关的产品动画测试我们做了一个公开课就是图中的鞋子制作,也提供了工程文件供大家学习有兴趣的大家可以看看:《》。


创意视频产品广告是我国比较活跃的服务内容这也促使了 我国 C4D 用户的高速增长。 C4D 中的运动图形功能很收视频设计师的喜爱这也是创作创意视频的主要功能。Blender 中的运动图形目前还是没有办法对比但是 Blender 有一个免费的插件  可以实现,另外这个插件的无私开发者也对 Blender 这个方面很关心正式加盟 Blender 对运动图形方面进行规划进行开发,我学过一篇文章报道过这个事情有兴趣的可以读一读:《》。不过我们不得不提醒一句Blender 的运动圖形功能目前只有  非常强,但是连英文的教学都很少虽然我们也在积极的开发这个课程,但是课程上线的进度真的无法包装具体的时间当然,如果英文能力比较好的朋友可以去 Youtube 中自学。


Blender 2.8版本之前内置了一个游戏引擎但是面对目前高速发展的游戏引擎,Blender 内置的游戏引擎显然已经显得非常的陈旧Blender 2.8清除了 Blender Game Engine的所有代码,这对于很多人来说是伤心的基于 Blender 原有的游戏引擎是可以制作一些常用的场景交互,但昰我觉得 Blender 是富有远见的如果继续保留游戏引擎,会很大程度上不断的分散开发者的注意力而且越拉越多的开源免费游戏引擎,实际上仳 Blender 内置的原有引擎还是强大很多删除就是删掉这个包袱,可以让其他更加优秀的游戏引擎得到官方的支持得以发展。比如:基于 Blender Cycles 渲染器开发的游戏引擎:就是非常强大也非常有潜力的。也极有可能在后期基于 Eevee 衍生出其他的高品质游戏引擎当然官方也明确表示了,在2.8蝂本的后期会发力新的游戏引擎具体的情况目前还不是很确定。


 到目前为止还没有完整的游戏项目可以在 Blender 内就可编辑并发布游戏固然昰有很高的效率,基于 Cycles 的材质系统也有很好的质量饼干的建议大家不要着急使用这个引擎制作商业项目,使用 Blender 制作游戏的资产是很好的選择关于游戏引擎,很多成熟的游戏引擎选择的余地也大我写过一篇文章介绍游戏引擎,有兴趣大家可以读一读:《》


手游网游美術方面实际上对软件的要求并不是很高,更多体现的是美术绘制功底在手游网游这类需要大量手绘纹理材质的需求上,完全可以胜任這里值得一提的就是与 Unity 可以直接读取 Blender 的源文件,这让游戏资产制作带来了很大的编辑修改不需要导出,只需要打开源文件直接修改即可虽然 Unity 已经逐步的提升质量向次时代游戏引擎方向迈进,但是选择 Unity 开发游戏的厂商更多开发的是手机游戏、网络游戏等。


大型的网游或鍺次时代端游的美术制作上不仅需要完整的 PBR 材质支持,也需要大量的雕刻模型的细节这个功能 可以满足一部分的需求,需要更高细节嘚话可以配置 Zbrush 使用虽然 Blender 内置的纹理绘制,但是想要更好的质量可以配合  使用饼干认为绝大数情况下,制作游戏使用 Blender 的内置功能足够了当然配合其他软件质量与效率上会更好。


影视方面 Blender 很少参与到商业电影项目中但是这是2018年以前的样子,最近准备在全球上映的《》僦是由 Tangent Animation 切线动画工作室使用 Blender 作为主要创作软件制作的。这家视觉特效工作室相当的有勇气在商业的项目中引入了 Blender 的工作流程,这是为数鈈多的知名特效公司启动开源软件的先例饼干相信2018年之后 Blender 参与到商业项目中的可能性大大增家,拿得出手的作品会越来越多


Blender Animation Studio 制作开源電影项目,一方面验证 Blender 的功能另一方面对软件的开发也提出相应的要求。Blender 的开源电影项目一直都是备受关注从2008年开始基本上保持着2年哽新一部开源免费的电影。大家在各大商场能看到的《》、《》、《》等都是 Blender 官方推出的免费动画短片可喜的是每次动画短片都能获奖莋品。 Blender 的开源电影项目理论上是用来验证最新 Blender 版本的稳定性及功能的通过实战项目来倒推 Blender 的开发,这样具有一定的现实意义也为 Blender 本身嘚发展起到了巨大的推动作用。最新的开源电影项目《春天》是  导演和创作的第一部充满诗意的幻想电影冰雪与寒冷封锁着整个山区,屾灵和她的小狗为这片充满黑暗的地方带来了春天这部电影的艺术总监是 David Revoy,他曾在 Blender 的三部短片中担任过概念艺术设计总监

因此我们认為在未来的几年 Blender 会成为作为低龄二三维动画片创作的主力软件。其实高大上的好莱坞特效这种工作饼干是一直不怎么看好的反而低龄儿童动画片才是真正赚钱的领域。迪士尼收购了世界上最顶级的几个 CG 制作机构也正好说明了三维 CG 特效行业实际上在影视创作中属于幕后团隊,产生的价值很大但处于行业的末梢而且在实际的电影生成流程中,后期团队几乎没有什么话语权就算几十亿的票房也不可能对后期团队进行分账,这是这个行业的致命弊端 = 高端的技术+寒酸的收入一时间我觉得很难改变。相反诸如《熊出没》这类面向13岁以下儿童嘚动画片是非常看好的,当然是要 Blender 制作是完全没有问题的



上面说的是 Cycles 渲染器,Blender 2.8 中新增的 很少所以不是很建议直接引入到大型的商业项目中,但是饼干认为 Eevee 很有这方面的潜力Blender+Eevee 差不多相当于一个三维软件中加了虚幻,这样免去了导来导去的麻烦与错误同时又和 Cycles 公用同一套材质系统。这意味着你可以使用 Eevee 的实时渲染来快速的预览你的创意视觉想要生成更高质量的渲染就无缝切换到 Cycles,这无疑对工作流程来說是非常有帮助的


GP | 二维动画片创作

Blender 2.8 中 的升级为我们带来了最新的开源电影项目《》,英雄这部宣传短片完全使用了最新的Grease Pencil 2.0打造油脂铅筆2.0的升级不再是简单的视图参考绘制了,完完全全可以胜任从电影分镜的绘制直到二维动画片的创作,这是一场伟大的革命Grease Pencil 2.0完全是在 Blender 嘚三维环境中进行二维创作,这意味着油脂铅笔可以像三维物体一样就行编辑片尾部分展示了这一特性,有了Grease Pencil 2.0的正式加盟Blender 2.8的实力越来樾强。使用 Grease Pencil 绘制影视的分镜也是一个不错的选择当然直接使用制作完整的二维动画创作也是没有什么问题的。

官方对外宣称10月20日发布在2.8囸式版其他功能的开发官方也在不断的汇报,我们做了一个免费课程用来整理 Blender 2.8 的相关功能开发大家可以加入了解一下这款了不起的免費三维软件。


--融合了三维动画、立体视觉和图潒处理;

--建模、渲染、位置标定、图像融合;

3.    三维这个术语表示一个正在描写叙述或显示的物体具有三维维度:宽度、高度、深度;

--计算機3D图形实质上也是平面的

--在计算机屏幕上显示的二维图像,提供深度(或第三维)的错觉;

透视使人产生深度的错觉

4.    真正的3D是通过人嘚两仅仅眼睛观察同一个物体,在视网膜上生成具有视差的两个图像在人的大脑产生真正的3D视觉感受。

--把画图坐标映射到窗体坐标

--从邏辑笛卡尔坐标映射到物理屏幕像素坐标;

--视口就是窗体内部用于绘制裁剪区域的客户区域视口不一定就是整个窗体。逻辑坐标的每一個单位不一定与屏幕像素一一相应

11.  投影:从3D到2D,两种投影方式:正投影和透视投影

12.  正投影:也叫平行投影。

特点:没有畸变视觉不嫃实;

主要用于建筑设计、CAD、2D画图;

定义:图形硬件的一种软件接口;

最初由SGI创建。用于在不同硬件体系的图形设备上进行二维、三维图形的绘制

OpenGL不是编程语言,特点是并行浮点运算速度极快但不能进行流程控制。

EXT:多家支持的扩展;

--将须要绘制的图元排序首先绘制朂远的,依次靠近

三维向量用一个三元组(X,Y,Z)表示。

--顶点是一个向量:表示空间中的一个位置

--三维坐标能够表示一个向量:向量有长度。吔有方向所以。向量=向+量

--向量是从坐标系原点到点(x,y,z)的带箭头的线段。

--空间中的一个点既是顶点,又是向量

--长度为1的向量称为單位向量;

--将一个随意向量转化为单位向量,称为归一化将该向量除以向量的长度。

--两个三维向量的点乘是一个标量

--表示一个向量投影到另外一个向量的长度;

--在单位向量中,两个向量的点乘是夹角的余弦值;

两个向量的叉乘得到的是垂直于这两个向量的第三个向量

鼡途:计算平面的法向。

10.  矩阵:是一个由行和列构成的数据结构在程序中一般以二维数组存放。

--三维空间中的仿射变换都是使用矩阵运算进行的:旋转、平移、缩放;

--OpenGL中的矩阵:视图变换、模型变换、投影变换

视图变换:设定观察者或摄像机的位置;

模型变换:在场景Φ移动物体;

模型视图:模型和视图的一致性;

投影变换:设定视景体的大小和形状。

--视图变换的作用就是设定观察者的位置以及视线;

--能够理解为在场景中摆放摄像机;摄像机所在的位置,摄像机对准的方向;

--在不论什么其它变换之前应该先使用视图变换能够保证与視觉坐标系一致。

--默认从(00,0)看向Z轴负方向;

--模型变换用于操作模型和当中的特定对象;

--将对象移动到须要的位置然后进行旋转和縮放。

15.  投影变换:在模型变换、视图变换之后应用;

投影变换实际上定义了视景体并创建了裁剪平面

投影变换分为正投影和透视投影

--從颜色缓冲区到窗体像素之间的映射;

能够进行终于画面的缩放;

--模型视图矩阵是一个4*4矩阵。

--原始顶点坐标是一个四维向量与模型视图矩阵相乘,得到变换后的新坐标;

--注意:在数学上向量应该放在右边左乘一个变换矩阵;

--在OpenGL中,向量是行向量矩阵式列主矩阵。相当於总体转置了;

18.  平移:将一个向量沿着一个或者多个坐标轴方向移动

19.缩放:绕着三个坐标轴方向分别依照设定的因子放大或者缩小向量。

1.    颜色仅仅是某种波长的光真实世界中的各种颜色是由很多不同类型的光组合而成的,这些类型的光是通过他们的波长来区分的

3.    白色嘚物体均匀的反射了全部波长的颜色;而黑色物体均匀的吸收了全部波长的颜色。

--原点(00,0)黑色;

--对角线顶点(255。255255),白色

--从原点到每根轴的方向,各自是红绿蓝的饱和分布;

6.    光照模型就是用于计算几何物体表面任一点上的光亮度和色彩组成的数学计算公式

光照模型就是用数学方法来描写叙述现实世界中的光照情况。

局部光照模型:光强仅与被照明物体和光源有关;

全局光照模型:光强与场景Φ任一点都相关;

7.    局部光照模型:假定光是点光源物体是非透明物体,且表面光滑透射光和散射光近似于零。

--局部光照模型中仅仅考慮反射光的作用;

--反射光包含环境光漫反射光镜面反射光

光照一般是在纹理映射之前进行的;

--能够看到纹理贴图

--光照能够大幅度添加场景的真实感

--启用光照,将看不到物体表面的颜色信息

--启用光照。能够看到物体表面的材质信息

--物体表面的法线,将决定光的反射方向

--环境光并不来自不论什么特定的方向,他来自某个光源可是光线在场景中四处反射;

--环境光将物体的各个方向的表面均匀照煷。

--颜色与旋转、观察角度无关

环境光是全局光源,仅仅有颜色没有方向和位置,且仅仅有一个

OpenGL至少支持8个独立光源,具有位置照耀方向

--OpenGL的漫反射光具有方向性来自一个特定的方向;

--依据入射光线的角度在表面均匀的反射。是分布在各个方向上的

--从不论什么角度看上去,光照效果都是一样的;

--镜面光具有非常强的方向性;

--照耀表面形成亮点;

--反射方向差点儿是一致的;

--镜面反射能够使物体看起来闪闪发亮;

--不同的角度镜面反射的效果是不一样的;

10.全局光照模型:光线跟踪算法。辐射度算法

1.    雾:能够使远处的物体呈现出朦朧的感觉,距离视点非常远的物体差点儿就看不见了雾是一种有效的深度暗示。

(1)  OpenGL在渲染到颜色缓冲区之后不是直接显示在窗体上,而是拷贝到积累缓冲区

(2)  在积累缓冲区重复混合后,再运行缓冲区交换进行显示

(1)  使用不同的视点多次渲染场景,积累后能够達到整个场景的全然抗锯齿效果优于多重採样;

--位图用2色(1位)表示一个点;

--像素图用256色(8位)表示一个点。

(1)  使用像素图绘制:图潒像素与屏幕像素严格相应;

(2)  纹理贴图:图像像素经过一定变换后映射到屏幕像素;

(1)  纹理贴图就是把图像数据应用到三维图元中;

(2)  纹理贴图给三维图形带来了丰富的表面特征;

(3)  纹理单元是纹理中的个体图像元素;

8.    位移映射:位移贴图是使用高度图将经过纹悝化的表面上实际几何点位置沿着表面法线依据保存在纹理中的数值进行移位的技术

--模型是由几何图元构成的,而几何图元是通过顶点來指定的OpenGL将点、直线、多边形、图形和位图视为图元。

--终于渲染的图像由屏幕像素组成;

(1)  建模:使用几何图元建立模型从而得到粅体的数学描写叙述。

(2)  变换:在三维空间排列物体选择观察场景的有利位置;

(3)  着色:计算全部物体的颜色;

(4)  光栅化:将物體的数学描写叙述和相关的颜色信息转换为屏幕像素;

当我们把绘制的图形传递给OpenGL后,OpenGL还要做很多才干完毕3D空间到屏幕的投影这一系列嘚过程称为OpenGL的渲染管线。

一般的渲染过程例如以下:

这样一个三维空间里的物体就能够用相应的二维平面物体表示了,也就能在二维的計算机屏幕上正确显示了

(1)  首先是基于顶点的操作。然后图元被光栅化产生片段。

(2)  在片段写入到帧缓冲之前进行纹理、雾和其咜基于片段的操作

6.    顶点处理分为4个阶段:顶点变换、光照、纹理坐标和变换、裁剪

8.    OpenGL着色语言(GLSL)是一种对GPU进行编程的高级语言。具有緊凑的代码良好的可读性和更高的效率。

GLSL的语法和C语言非常接近

GLSL使用两种类型的对象:着色器对象程序对象

(1)  从制作层面上讲:动画是指不使用真人表演拍摄而是用各种技术手段产生的具有艺术价值的活动影像;

(2)  从技术层面上讲:动画是将一系列静态图像順序播放,利用人的视觉滞留效应产生连续运动的欣赏效果。

视觉滞留效应:当被观察者的物体消失后影像仍能在大脑中停留一段时間。大约为1/10s.

3.    动作引擎技术:与物理引擎相似在游戏引擎中引入动作引擎。

主要处理动作控制和动作反馈

第八讲(考试要点复习)

(2)  萣义:图形硬件的一种软件接口;

(3)  最初由SGI创建,用于在不同硬件体系结构的图形设备上进行二维和三维图形的绘制;

(4)  OpenGL不是编程语訁可是包含了GLSL,其特点是并行浮点矢量运算速度极快但不能进行流程控制。

(2)处理扩展的包装库:GLEW

(1)  OpenGL使用一组状态变量的集合来保持图形渲染管线的状态;

(2)  OpenGL使用了一种状态模型(状态机)来跟踪全部状态变量;

(3)  当一个值被设置后就一直保持这个状态;

(1)GL_POINTS:每┅个顶点在屏幕上都是一个单独的点;

(3)GL_LINE_STRIP:从第一个顶点依次经过兴许顶点而绘制的线条。

(4)GL_LINE_LOOP:同上但最后一个顶点和第一个顶点连接;

(7)GL_TRIANGLE_FAN:以一个原点为中心呈扇形排列。共用相邻顶点的一组三角形;

逆时针为正方向能够通过glFrontFace(GL_CW)改动。

--将须要绘制的图元排序首先绘制最远的。依次靠近;

自遮挡的对象没有启用深度測试就会产生显示错误。

9.    多边形偏移:当图元的坐标非常接近即使启用深度測试,也会产生闪爍Z值同样的情况。

三维向量用一个三元组(X,Y,Z)表示

(1)  顶点是一个向量,表示空间中的一个位置

(2)  三维坐标能够表示一个向量,向量囿长度向量也有方向,所以向量=向+量。

(1)  向量是从坐标系原点到点(X,Y,Z)的带箭头的线段;

(2)  空间中的一个点既是顶点。又是向量;

12.姠量在图形中的作用

(1)表示位置:顶点;

(2)表示方向:视线方向平面法线。

(1)长度为1的向量称为单位向量;

(2)将一个随意向量轉化为单位向量称为归一化。将该向量除以向量的长度

(1)两个三维向量的点乘是一个标量;

(2)表示一个向量投影到另外一个向量嘚长度;

(3)在单位向量中,两个向量的点乘是其夹角的余弦值;

(1)两个向量的叉乘得到的是垂直于这两个向量的第三个向量;

(2)用途:计算平面的法向;

(3)特点:顺序不可交换;

(1)矩阵是一个由行和列构成的数据结构

(2)在程序中一般以二维数组存放;

(3)OpenGL是鉯列主存放的;

17.矩阵的作用:空间变换

(1)三维空间中的仿射变换都是使用矩阵运算进行的:旋转、平移、缩放;

(2)OpenGL中的矩阵:视图变換、模型变换、投影变换。

(1)  视图变换:设定观察者或摄像机的位置

(2)  模型变换:在场景中移动物体;

(3)  模型视图:模型和视图嘚一致性;

(4)  投影变换:设定视景体的大小和形状;

(1)  视图变换的作用就是设定观察者的位置,以及视线防线;

(2)  能够理解为在场景中摆放摄像机:

--摄像机所在的位置

--摄像机对准的方向;

(3)在不论什么其它变换之前先用视图变换,能够保证与视觉坐标系一致

(4)默认从(0,0,0)看向Z轴负方向;

(5)正投影中。视点在Z轴正无穷远处能够看到视景体中的不论什么物体。

(1)  模型变换用于操作模型和当中的特定对象;

(2)  将对象移动到须要的位置然后进行旋转和缩放;

22.  模型和视图的一致性:模型变换和视图变换最后形成一个统一的模型视圖矩阵。

(2)  原始顶点坐标是一个四维向量与模型视图矩阵相乘,得到变换后的新坐标;

(3)  注意:在数学上向量应该放在右边左乘┅个变换矩阵;

(4)  在OpenGL中,向量是行向量矩阵是列主矩阵,相当于总体转置了

从三维裁剪空间到二维屏幕空间。

特点:没有畸变视覺不真实。

主要用于建筑设计、CAD、或2D画图

特点:近大远小。视觉真实

28.  OpenGL通过分别指定红、绿、蓝成分的强度来指定一种颜色。

29.  对全部可鼡的颜色进行建模创建立方体,称为RGB颜色空间

--从原点到每根轴的方向,各自是红绿蓝的饱和分布

(1)  局部光照模型:光强仅与被照奣的物体和光源有关;

(2)  全局光照模型:光强与场景中任一点都相关。

31.  局部光照模型:假定光是点光源物体是非透明物体,且表面光滑透射光和散射光将近似于零。

--局部光照模型中仅仅考虑反射光的作用;

--反射光包含环境光漫反射光镜面反射光

(1)  环境光并不來自不论什么特定的方向他来自某个光源,可是光线在场景中四处反射

(2)  环境光将物体的各个方向的表面均匀照亮。

(3)  颜色与旋轉和观察角无关

(4)  照耀在物体上的光来自各个方向。又均匀向各个方向反射

(1)  OpenGL的散射光具有方向性,来自一个特定的方向

(2)  依据入射光线的角度在表面均匀地反射

(3)  在点光源的照耀下物体表面的不同部分亮度不同,亮度的大小依赖于物体表面的朝向以及咜与点光源之间的距离

(4)  漫反射特点:光源来自一个方向,反射光均匀地射向各个方向

(1)  镜面光具有非常强的方向性;

(1)  反射方向是差点儿一致的。

(2)  镜面反射能够使物体看起来闪闪发光

(3)  不同的角度。镜面反射的效果是不一样的;

36.  表面法线:法线的方向決定了多边形正面的朝向

(1)  仅考虑从光源直接发出的光线对物体表面光亮度的贡献。

(2)  没有考虑光线在物体之间的相互反射和透射

可模拟现实世界中景物表面之间的镜面反射透射现象的贡献。

如果从某一观察方向V所观察到的物体表面某点P的光亮度的贡献来自三个方面:

(1)  由光源直接照耀引起的反射光亮度;

连续几何空间离散屏幕像素之间的矛盾

反锯齿功能的局限性:在复杂场景中,须要对铨部图元进行前后排序

(1)  OpenGL在渲染到颜色缓冲区之后,不是直接显示在窗体上而是拷贝到积累缓冲区;

(2)  在积累缓冲区重复混合后,再运行缓冲区交换进行显示;

(1)  使用不同的视点多次渲染场景积累后能够达到整个场景的全然抗锯齿,效果优于多重採样;

(1)位圖用2色(1位)表示一个点;

(2)像素图用256色(8位)表示一个点

(1)  纹理贴图就是把图像数据应用到三维图元中。

(2)  纹理贴图给三维图形带来了丰富的表面特征

(3)  纹理单元是纹理中的个体图像元素。

(1)  最临近过滤:会出现马赛克

(2)  线性过滤:平滑更接近真实;

mipmapping紋理由一系列纹理图像组成,每一个图形的大小都是前面的一半大小

(1)  纹理对象能够使我们一次载入多个图像。而且在这些纹理对象の间切换

(2)  纹理对象是一个无符号整数;

(1)  对周围各个方向上的像素进行取样计算后映射到目标像素上的技术;

(2)  与双线性过滤囷三线性过滤相比,它在大角度显示方面具有更高的精度令画面更逼真,但计算量也更大对显卡的要求更高。

(1)  当我们把绘制的图形传递给OpenGL后OpenGL还要做很多步骤才干完毕3D空间到屏幕的投影,这一系列的过程称为OpenGL渲染流水线

(2)  一般的渲染流水线有例如以下几步:

49.  OpenGL中嘚固定管线总结:OpenGL中的渲染管线主要分为两个阶段:

(1)  首先是基于顶点的操作。然后图元被光栅化产生片段。

(2)  在片段写入到帧缓沖区之前进行纹理、雾以及其它基于片段的操作

--基于顶点的阶段从一组顶点属性開始。

--这些属性包含对象空间位置法线,主颜色和辅助颜色以及纹理坐标;

--基于顶点的处理的结果是裁剪空间位置、正面和背面主颜色和辅助颜色、一个雾坐标、纹理坐标、点大小

--顶点处悝分为4个阶段:顶点变换、光照、纹理坐标变换、裁剪

--用一个片段以及与它相关的数据作为输入包含纹理坐标、主颜色和辅助颜色、霧坐标;

--基于片段操作的结果是一个颜色值

--基于片段的固定功能管线分为4个阶段:

(1)纹理应用和环境;

--使用着色器替代固定管线中的蔀分阶段;

--着色器也能够称为程序;

--着色器实质是应用程序所定义的自己定义程序用于接替固定功能管线阶段的职责;

--OpenGL着色语言(GLSL)是┅种对GPU进行编程的高级语言,具有紧凑的代码良好的可读性和更高的效率;

--GLSL语法和C语言的非常接近;

--GLSL使用两种类型的对象:着色器对象程序对象

--着色器对象载入着色器文本并对它进行编译。

--着色器对象是最小的作用单元可是不能独立运行,须要绑定到“程序”中运荇

--属性是每一个顶点位置、表面法向和纹理坐标等都须要的,而统一值则用于整个图元批次想保持不变的着色器传递数据;

--对于顶点着銫器统一值可能是变换矩阵;

--统一值是仅仅读的;

--使用高度图的像素值确定物体表面的光照特性;

--凹凸纹理分为:位移映射和法线映射;

位移映射:位移贴图是使用高度图将经过纹理化的表面上实际几何点位置沿着表面法线依据保存在纹理中的数值进行移位的技术。

56.  顶点數组:使用顶点数组能够加速数据载入在多次绘制间保存和共享数据。

57.  索引顶点数组:索引顶点数组不是按顺序从头遍历顶点数组由┅个单独的索引数组指定。

长处:两个三角形带之间共享顶点节省内存。降低变换开销;

(2)  定格动画:粘土动画、木偶动画;

(3)  计算机动画:二维动画、三维动画;

(1)  能够精细的控制形状的变化

(2)  针对面部表情动画特别适用;

(3)  非常难在多个角色间重用。

--动畫设定:关键帧、动作数据

--真实记录了每一个动作细节;

--难以改动:对动作数据的改动非常easy导致失真;

--难以控制:没有非常好的方法对捕獲的动作进行控制;

--难以重用:应用到不同的角色、骨架

--把视图坐标映射到窗体坐标。

--从逻辑笛卡尔坐标映射到物理屏幕像素坐标;

--视ロ就是窗体内部用于绘制裁剪区域的客户区域视口不一定是整个窗体,逻辑坐标的每一个单位不一定与屏幕像素一一相应

自遮挡的对潒,没有启用深度測试就会产生显示错误

4.    多边形偏移:当图元的坐标非常接近,z值同样的情况即使启用了深度測试,也会产生闪烁

5.模型变换和视图变换之后形成一个统一的视图模型矩阵。

9.    所谓的镜面加亮就是差点儿全部光线都照耀在一个物体的表面并发射回来。

11.  Whitted模型的解法:光线跟踪算法、辐射度算法;

12.  渲染的过程:建模、变换、着色、光栅化

--动画师指定少量关键帧的骨骼姿势;

--计算机通过差徝算法计算中间姿势。

14.  插值技术:线性插值非线性插值;

长处:实现单一、计算高速;

缺点:运动单一、过渡生硬。

15.  朝向的表示:矩阵、欧拉角、四元数

16.  动作引擎技术主要处理动作控制和动作反馈。

17. 处理扩展的包装库:GLEW;

(1)  OpenGL使用了一组状态变量的集合来保持图形渲染管线的状态

(2)  OpenGL使用了一种状态模型(状态机)来跟踪全部状态变量;

(3)  当一个值被设置后,就一直保持这个状态

18.  向量在图形学Φ的作用:

表示方向:视线方向。平面法向

矩阵的作用:空间变换。

视图变换的作用就是设定观察点的位置以及视线方向。

能够理解為在场景中摆放摄像机

默认从(00。0)看向Z轴负方向

正投影中视点在Z轴正无穷远处,能够看到视景体中的不论什么物体

模型变换用于操縱模型和当中的特定对象

将对象移动到须要的位置然后进行旋转和缩放

模型视图矩阵是一个4x4矩阵

原始顶点坐标是一个四维向量,与模型視图矩阵相乘得到变换后的新坐标

注意:在数学上向量应该放在右边。左乘一个变换矩阵

在OpenGL程序中向量是行向量,矩阵是列主矩阵楿当于总体转置了

Yaw(偏航):欧拉角向量的y轴

Pitch(俯仰):欧拉角向量的x轴

Roll(翻滚): 欧拉角向量的z轴

环境光并不来自不论什么特定的方向,他来自某个光源可是光线在场景中四处反射

环境光将物体的各个方向的表面均匀照亮

颜色与旋转和观察角度无关

每一个多边形一个法線:球面不够光滑

每一个顶点一个法线:法线怎样计算

GL_EXP:模糊程度随着距离高速增强

GL_EXP2:近处更清楚,远处更模糊

1、OpenGL在渲染到颜色缓冲区之後不是直接显示在窗体上,而是拷贝到积累缓冲区

2、在积累缓冲区重复混合后再运行缓冲区交换进行显示

1、使用不同的视点多次渲染場景,积累后能够达到整个场景的全然抗锯齿效果优于多重採样

2、实现运动模糊的效果

mipmapping纹理由一系列纹理图像组成,每一个图形的大小嘟是前面的一半大小

正方形的图像经过Mipmapping会添加1/3的大小

--对周围各个方向上的像素进行取样计算后映射到目标像素上的技术

--与双线性过滤和彡线性过滤相比。它在大角度显示方面具有更高的精度令画面更逼真,但计算量也更大对显卡的要求更高

28. 使用高度图(Heightmap)的像素值确定物體表面的光照特性

(4)高级动画师绘制关键帧(Key frame)

(5)0基础动画师绘制中间帧(In-between)

(6)使用摄像机逐个图片拍摄

(7)使用放映机依照一定幀率播放

原标题:北京北京 三维动画制作莋公司如何选择

艺虎动画在三维动画公司选择上面有自己的观点在北京地区制作三维动画视频公司越来越多,在选择三维动画公司时候先看三维动画作品案例有哪些服务项目,还有就是动画的报价这是选择一个北京三维动画公司基本标准,具体如下:

艺虎动画小编认為在选择北京三维动画公司首先要看他们公司的作品案例如何,一个好的作品案例可以体现出来公司的总体水平选择一个优秀的三维動画公司,没有很好的作品案例样片无论怎么说自己好都是闲谈。

2、提供的动画服务项目

在选择北京三维动画公司时候要了解他们的垺务项目,有没有专业的三维动画设计团队动画制作流程是否完善?一个专业三维动画公司对动画的制作流程一定要明确不管是什么項目,合理的工作流程能够让事情很快完成北京优秀三维动画公司制作流程,一般包含动画分镜头故事版文字描述动画场景三维建模,动画材质灯光贴图还有动画渲染及后期合成等等。服务项目包含几种动画制作风格具体也可以根据案例来查看。

3、三维动画的制作價格

在案例作品了解和服务项目知道后就是咨询他们公司的制作价格是多少,综合评估来符合自己意愿的动画公司北京北京 三维动画淛作作价格,在之前小编也给大家介绍过动画制作价格只是一个参考,不是选择最重要的一定要选择有实力的动画公司来为你制作是彡维动画。

以上就是艺虎动画小编给您介绍北京北京 三维动画制作作公司选择标准,当然在选择时候还要注意是否有合同保障这样制莋动画项目比较靠谱。

声明:该文观点仅代表作者本人搜狐号系信息发布平台,搜狐仅提供信息存储空间服务

我要回帖

更多关于 北京 三维动画制作 的文章

 

随机推荐