正在阅读:高性能计算在动漫产业中的应用高性能计算在动漫产业中的应用

2009-04-21 10:41 出处:计世网 作者:佚名 责任编辑:yejianfei

  动漫产业在最近一段时间的IT界当中掀起不小的波澜。各个国家的单位,纷纷上了动漫相关的行业。这种趋势和背景导致了我们这些作为中立的技术机构,开始介入到这个行业当中。我们CISP主要作为一个中立的技术机构,对独立的软件供应商,还有OEM,还有合作伙伴,还有学术界相关的实验室,提供一种相互交流,并且相互促进的这样一个中介的作用。

  那么在过去的一段时间当中,PVC  Lab跟我们硬件厂商,还有软件厂商合作,为很多的动漫行业的客户提供相应的服务。例如我们中心的领导邱博士开场的时候说的一些项目。

  比如说渲染农场的应用,渲染农场是一个计算机群,用于渲染这种CGI的图像,主要用于电影或者电视广告当中一些现实场景无法拍摄,只能通过虚拟或者仿真的方式,达到一个影视的特效的结果。应该来说这是跟我们以往所认知的科学计算的应用不太一样。以往的科学计算的应用,可能涉及的大量的通讯,大量的数据处理,还有并发性的问题,还有可并行性的问题等等。那么渲染农场有哪些特性呢,我们提到视觉特效的时候,跟日常提到的所谓的3D游戏,或者虚拟现实有什么不同呢。作为一个计算来说,渲染农场的应用,是一个无相关的性的典型的应用。无相关性,就是指我们看到的每段视频都是独立的帧来构成的,我们电视上每秒钟过的帧是24个帧,在制作一个CG的镜头的时候,我设置一个起始点,还有一个结束点,把中间的开始和结束叫做两个关键帧,然后两个关键帧中间的动作的移动,还有物体的移动,通过一些具体的算法实现的,然后动作开始拆分很多的帧,帧与帧之间,模型到具体的图像,需要一个渲染的过程,但是这些帧拆分出来,并且进行独立渲染的时候,帧与帧之间没有相关性,渲染农场是非常容易运行的的。

  第二是非交互性。实际上跟我们实时地3D图形去比较的话,在渲染农场当中形成的图像没有相关性的,这个过程当中把所渲染的结果定死了,没有太大的改变。不像游戏,或者虚拟现实的场景当中,比如说鼠标移动,人物可以转身等等,不会出现这样的情况。

  第三是非实时性的应用。如果我们是一个游戏玩家的话,可能关注这个游戏的快慢。或者在空军当中做模拟飞行的飞行员,我可能关心的是虚拟出来的3D虚拟现实的环境,能不能跟当时的现实环境相同。在渲染农场当中,关注画面的精细程度,还有模仿周围的真实的场景,这种真实的程度,不关注它的反应。

  这是渲染农场跟我们一般认知的3D处理不同的一些特性。

  我们做渲染过程的时候,有一些什么环节呢。基本上有三个过程,我们做一个片子,需要一个导演和编剧,他们可能根据剧本的理解,构建一个想要的场景,根据场景专业的创意人员,会让我们的演员带上一个动作捕捉器,可以在你的一些肘关节带上一些感应器,可以把导演根据你的动作要求捕捉下来,然后把你的动作里面的一些关键点,映射到虚拟的人物的身上,然后这个虚拟人物可以动起来。第三步,就是有了捕捉的动作,那么虚拟人物就建立起来了,这个虚拟人物必须在一定的场景当中做这些运动,这个场景可能包括后面的大屏幕,还有不同的外设的光源。通过这些场景设置以后,然后开始进行渲染。比如说人的皮肤上面可以贴一些材质,可能把这个黄皮肤的人物,可能贴上黑皮肤的,可以有一个贴图的过程。还要把光源的综合的因素考虑进去。比如我站在这里,面前有一百盏灯,还有这个光源射在脸上的一个效果。这是一个非常密集的应用。在看大量动漫的行业的时候,往往发现他们使用的机器的用量,硬件的数量非常大。

  那么在中国,我们现在动漫行业什么状态呢,或者哪些人用动漫的产品,包括软件,还有硬件平台呢。在这里给大家说一下,第一是说我们专业的电影,电视的影视特效的处理的部门,比如说央视,北影等等,他们专门的影视部门有相关的需求。这一块影视制作的市场,主要集中在北京和上海。还有一种是比较小规模的,是私人的独立的专业的工作室,比如说承接广告当中的渲染的工作。应该来说,这个产业比较发达的包括北京、上海、深圳。还有是我们地方的电视台,他们可能也有一些相关的需求。那么也有类似的应用的场景出现。

  比如说一些大的公司把一些动作捕捉,还有创意,人物的造型设计做好,然后渲染方面的工作放在中国来做。这是目前我们在国内看到的一些商业机会和我们潜在的合作伙伴。

  我们看一个完整的渲染的架构,应该是有包含哪些硬件组件和软件组件呢。那么硬件方面,从软件的功能来解释硬件起到的作用。首先作为一个专业的动漫人员,通过Maya或者3DMax来做,会在一台PC的工作站上做相关的工作,可能非常强非常好的一个PC的工作站,第二做一些基本的设计,可能是一些场景,光影效果的一些需求等等。然后通过特定的调度系统,将设计好的场景,还有各自关键帧的不同的视频的帧,通过调度系统,或者分发系统发布到大量的PC服务上去,然后最后算下来的结果,都是独立独立的帧,不能完整的构成一段视频,这个时候需要一些非线性编辑的工具,最后组合成我们需要的视频。可能需要一些音效,或者一些图需要后处理。这是典型的硬件和软件的结构。

  第一我们需要一个建模的软件,第二我们需要一个调度器,第三我们需要一个非线性编辑的系统,应用软件层面的三个要求。还包括操作系统,还有IT管理的工具。这里不多说了。

  这里是一个动漫行业所要求有的一个渲染的平台。那么这个平台,为什么我们经常需要这么大的计算量呢,为什么会当做一个严格意义上的PC来看呢,因为计算量非常巨大的。

  在这里是一个计算量随着你的视频的分辨率还有它的变化的趋势图。最低是标准清晰度的视频,我们日常看到的电视的标清的分辨率的图片,我们看到一个15秒的一个广告,一台主流的两路双核的服务器,需要31个小时进行渲染。用高清的视频,或者电影要求的,在影院放映的分辨率的视频的话,一台服务器需要7500天来做1.5小时的电影。在北京天文馆他们具有这样一个级别的动漫的应用。

  这里是一个例子,是一个非常非常小的海洋模拟的过程,整个是九帧,分辨率是640×480。在四台惠普的刀片上面需要将近五分钟做渲染,并且Bit  Depth只需要8。

  刚才跟大家讲我们软件的结构,还有硬件方面的需求等等,我们做现实项目的时候还碰到一些问题。首先第一个问题,应用专业人员遇到IT架构的障碍。我参加过很多动漫渲染行业的一些峰会。我看到的都是一些扎马尾辫,或者扎耳钉的艺术家,他们对色彩的感觉比我们做IT的人好的很多。但是实际上他们对于IT的认知,仅仅停留在装系统,装XP这样的一个概念上面。然后通过我跟很多客户聊,他们甚至不知道有HPC存在,不知道利用现有的HPC的软件做相关的工作。他们在一直不停地用XP,用Linux的是少数。大量的用的是一些插件,可能有一些特定的场景,可能需要二次开发的插件才能解决他们手头的问题。第三个问题,是IO瓶颈,每秒钟需要25帧,才能构成一个连续的镜头。一帧在胶片上面的存储大概在7M左右。大家刚刚看过的葫芦娃翻新的版本的电影,这个所有的胶片倒下来以后,这些机器大量的时间等待IO的瓶颈。还带来了一个后期数据的管理问题,我们做版本的视频或者广告的时候,涉及到四、五千帧的量,可能有一些帧可能消失了。我如何判断我的帧丢了,后续怎么处理。如果做一个八帧的话,丢了一个的话,可以手工加就可以了。如果是电影的话怎么办,他们每个帧都记下来,然后后期在进行管理。实际上他们停留很原始的阶段上面,用草稿版来记。这是一个很有意思的问题。

  第四个问题渲染算法,单核到多核的架构来说,目前还处于一个适应的阶段当中。渲染的算法我们还需要一些机构做一些相关的优化。

  我们主要的工作是基于微软的比较容易开发的平台,比如说做一些后续数据的管理等等相关的工作。目前来说我们做的一些项目,取得了一点点进展。

 
为啥你的宽带网速,永远没有运营商说的那么快?
知道这几点 可以让投影更“长寿”!进来看看 Wi-Fi 4/5/6/7都代表什么?一文读懂Wi-Fi进化史 说好能打200页,为什么打了几张照片就没墨了? 年轻人的第一台投影怎么选?进来告诉你

为您推荐

加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
热门排行

服务器论坛帖子排行

最高点击 最高回复 最新
最新资讯离线随时看 聊天吐槽赢奖品