电子技术论文动画大规模渲染技术研究

所属栏目:电力论文 发布日期:2014-06-25 17:01 热度:

  渲染已经存在的方式是:单机渲染,多机渲染,集群渲染这几种基本方式,这里面又视情况有不同的具体方式,多机渲染就有多机渲染共同一帧或者多机分别渲染一帧的形式,后一种方式是大中型公司采用的方式,单机渲染属于小型工作室或者个人采取的方式,最后一种集群渲染方式则是需要大量资金和技术支持的群集方式,其特点是对需要很长时间计算的复杂数据流更有效率。

  【摘要】渲染是一种将虚拟的三维空间通过计算变成二维平面计算方式最终得到某种储存格式的图片的过程。本文对动画大规模渲染技术进行了分析研究,仅供参考!

  【关键词】电子技术论文,渲染,数据,软体,二进制文件

  前言

  渲染群的组建方式,需要解决的首要问题是数据传送问题,因为数据,比如texture,reference(贴图、参考文件、缓存文件)等等,这些数据很多需要频繁的IO(进出操作术语)操作,解决机器间的数据快速传送问题首要的是解决带宽问题,其次是读写均衡问题,读写问题不仅仅是一个硬件问题,对于传送的软体数据也会产生十分重大的影响,合理的使用二进制文件要比直接使用压缩格式的文件更有效率。

  渲染群需要软件来进行工作的自主分配,合理的工作分配能提升渲染效率。优先权的设定能使渲染工作人性化。

  主要创新点:使用硬件和软件结合的方式,根据实际的情况,转换二进制文件,实现数位长度传输,IO分离解决带宽瓶颈。

  背景:CG产业在中国发展近20年,国家原创事业发展迅速,对于CG渲染技术需求与日俱增,很多时候,已经不是创造力部够的问题,而是渲染时间过长使艺术家不得不放弃一些想法来实现现有技术下的可行性要求。

  意义:增加渲染质量,降低渲染时间,充分利用现有资源,增加国有动画成品质量和数量。

  研究内容、研究方法与思路:(1)通过对渲染数据传送方式的研究,优化数据传送,找到针对CG制作的优化传送方式。(2)使软件根据硬件的不同配置,主动的分配渲染帧,达到资源的优化组合。(3)分离渲染挂机和渲染分配的操作过程,达到资源的100%利用。(4)OI(读写)分离操作,解决局域网传送瓶颈。

  根据实际情况有针对的编写脚本命令完成机器数控流操作。

  1渲染技术概述

  渲染是一种将虚拟的三维空间通过计算变成二维平面计算方式最终得到某种储存格式的图片的过程。在渲染的过程中,我们需要有效的将三维空间中的坐标点映射到平面上,形成一张张的图片,再通过图片序列的连续播放实现动画。所以渲染需要解决的是三维空间二维成像问题。

  二维成像需要解决的三个重要问题,一个是数据映射时候的大块不连续数据多目标传输问题,专业的说就是“I”操作问题。第二个是数据切片问题,这发生在数据传输完成以后,渲染时候,需要将数据切割成小块,并且完成符合于渲染器的解压缩工作,专业的说就是“二进制文件化”操作。第三个就是数据输出的“O”操作,图片是否能顺利的保存,这是我们渲染的目的,其对于大尺寸图片来说尤其有意义。

  所以渲染总的来说是一个技术性和实际情况结合很强的工作,需要程序者的头脑和艺术家的天赋才能胜任。

  2渲染IO软件问题

  渲染存在数据传输,这个数据分为输入数据和输出数据,输入数据的代表就是“texture”贴图文件,由于一般的贴图文件是可视化的压缩文件,所以传输时候存在软件的头文件和尾文件检测,也就是说,如果我们要使用贴图的一小部分,我们也需要将贴图的所有部分完全传输完成才能生效,一般来说,这是由于压缩格式引起的,按照IP协议,一个文件的传输完成与否,在于核对文件的头文件和尾文件来达到检测的目的,所以,如果我们按照现有的图片文件方式,就一定会遇到这个情况。试想,如果能让我们只读取我们需要渲染的那部分图片的,那会减少传输的图片,对于一个网络集群来说,多点重复可不是可以简单算出来的。那有没有办法解决这样的问题呢?

  “二进制文件”格式就是一个很好的解决方法,理论上来说,二进制文件不是按照头尾文件来确定是否传输完成的,它是依靠偏移来确定读入数据的,由于我们需要的数据可以通过确定需要多少数额来表示,我们完全可以实现需要哪块数据就只读取哪块数据的方式,这样就十分便捷的实现了大数据切块和精确传输的问题。

  在maya本身的制作文件里面,也就是maya的bin文件夹里面,都有一个数据转换的模块的,其中有负责锥心纹理的转换程序,也有maya自带使用的BOT文件纹理转换程序。

  Maya-BOT纹理转换方式(详细请见副本技术手册)

  3渲染IO硬件问题

  从硬件角度来考虑,如果一个72节点的4核心渲染群,如果产生一个节点1兆的贴图传送量,那72个节点就是72兆,72兆需要乘以8换算成网卡的传输量,那就是576兆,对于一千兆网卡来说已经占用了一半的带宽,而往往一个场景贴图的量是200兆,也就是说,数据在硬件上的传输是一个很大的瓶颈。

  如果我们在硬件传输数据的过程里面加入时间这个概念,你就会发现,很多情况下硬件的传输都是发生在一个爆炸时间,也就是说大家都挤在一块了,试想如果我们将这种需求分开,是不是能缓解甚至解决这个问题呢,答案是肯定的,因为大家很容易看出如果我们将机器的总带宽乘以时间,可以看出,持续时间的传输量是惊人的,完全可以满足我们的带宽需求,但是怎么做才可以达到我们的要求呢,这需要分成两步走,第一步、我们需要通过光纤连接计算机的每个节点,让其基础传送量达到一个比较良好的带宽;第二步、我们需要让软件预判断出下次需要渲染传送的数据,这样,在下一次峰值到来前,先分批传送数据到每个节点的缓存里面,或者本地硬盘上面,由于本地硬盘传输速度快于服务器传输,而且是一对一的传输,所以,完全可以缓解并发的压力,达到分时传送数据。

  有了数据传入,就一定有数据传出,如果数据传出时候,和数据传入是在一个地方,也就是说,传出数据的服务器和接收数据的服务器是一个服务器,那就势必造成网络冲突,如果不造成冲突,也会使服务器网卡传送的带宽下降,因为读入和读出必然是要错开的,不能同时进行。于是硬件架构上,要求连接两个服务器,一个服务器专门处理数据输出服务,而另外一个专门处理数据输入服务,这样就能很好的使用,虽然有人提出更加合理的负载平衡的方式,但是,由于不能很好的估计实际情况,所以使用性不是很强。

  4渲染方式

  渲染方式分为:单机渲染,多机渲染和集群渲染。单机渲染就是说,一台机器挂上一卡,单独进行渲染,这样的做法是最原始的,因为这样不能很好的实现时间控制和管理,当一卡渲染完毕以后,需要人为的再去挂卡。多机渲染,必须借助软件管理,有多机渲染共同一帧或者多机分别渲染一帧,这个渲染是软件自动分配的,所以人为的挂机完全可以在集中的时间完成,这样也增加了机器的利用效率,可以实现机器的不间断连续渲染,提高了工作效率。集群渲染方式则是需要大量资金和技术支持的群集方式,其特点是对需要很长时间计算的复杂数据流更有效率。

  按照现在公司的情况,制作机器上百台,可以按照白天工作,晚上连机渲染的方式,这样可以使机器利用率最大化。

  提出的问题是,进行连机渲染的人,需要高度集中的了解渲染的整个过程,包括数据传送,机器性能,任务分配,任务优先方式等等,只有合理的使用软件,才能将机器的工作效率提高到最高,达到资源的合理分配。

  5总结

  渲染是一个和硬件软件都密切相关的技术工作,只有在了解数据传送,硬件实际情况,渲染文件的实际情况,IO平衡的方式,带宽的多少等等,才能得出一个合理的渲染方式,这绝不是千篇一律的,这篇文章涉及很多领域的技术,只有了解了这些,才能很好的进行渲染工作,让渲染真的为艺术服务。

  参考文献:

  [1]mentalRay渲染技术.

  [2]mayaSoftware渲染精粹.

文章标题:电子技术论文动画大规模渲染技术研究

转载请注明来自:http://www.sofabiao.com/fblw/ligong/dianli/21467.html

相关问题解答

SCI服务

搜论文知识网的海量职称论文范文仅供广大读者免费阅读使用! 冀ICP备15021333号-3