Author Archives: ronnie

I am a master student of Computer Science in Tsinghua University.
My Research area is computer graphics, specifically is Rendering.
I am a crazy football and Movie fun.

使用Instruments检测内存泄露

话说Mac下面的一些开发工具真得很好用,比如Instruments,对于使用xCode来编写程序来说,调程序非常方便。 比如我的程序有内存泄露,我就可以直接使用Run->Run with Performance Tool->Leaks来检测。 Instruments会直接给出程序的哪个地方存在泄露,方便吧。

Toy Story 3

不久前去看了Pixar今年的大作《Toy Story 3》。这一集整体感觉不错,精彩的故事加上3D效果,还是很值得观看的。影片质量好于第一集,与第二集不相伯仲,这一集的优势在于Pixar的技术相比与制作第二集时已进了许多。 我在此梳理一下《Toy Story 3》中那些方面技术有了改进。 Subsurface Scattering的广泛应用。在这一集中,所有的软塑料角色都加入了subsurface scattering,最明显的是Woody和Buzz的脸部,已经不像前两集那样生硬,而是柔和了许多,这种效果更像是软塑料玩具。电影中这种效果还有一个明显的出现地方是黑夜中的探照灯从背面照到一个橘红色路障时,路障泛出淡淡的橘色,这是一个最明显的subsurface scattering例子。还有就是Andy等任务的身体,也已经不再生硬,有了柔和的感觉。这中技术是从《Ratatouille》开始逐渐使用的,这一集中更是大规模地“普及”了。 毛发渲染技术。这个应该也是从《Ratatouille》开始的,但是为了体现大大的毛毛熊Lotso毛茸茸的感觉,Pixar开发了专门方便的工具来渲染Lotso。Andy的头发也是一个进步,30多块独立的头发粘在一起构成。同时Pixar也改进了渲染毛发时的光照和着色系统。 布料模拟技术。这项技术的改进是为了使Ken的衣柜中各种不同类的衣服更加逼真。Pixar从《UP》开始,为衣服的模拟专门开发了方便强大的系统,让动画师或者美工可以非常方便高效地设计不同材料的衣服,而不用再像以前那样一块一块地去拼出一件衣服了。 我之前的文章介绍过,Pixar的技术看起来真得很强大,虽然他们也使用了不少的各种各样的小技巧(trick),但能够做出更好的效果,又何尝不可呢。

毕业了

今天硕士毕业典礼,也就是我硕士的最后一天了,明天我就不再是学生了。 读硕士这三年,我收获了很多,可以说这三年是我成长最快的一段时间。但同时回过头去想想,又有很多遗憾。 我想说说我读硕士的感受,这或许对以后的学生有些益处。 为什么要读硕士。说真的,我为什么要读硕士我在大四的考虑真得很简单,甚至可以说是幼稚,或者干脆没想清楚。我在大四保送研究生前夕,我对自己的感觉就是本科的课程学得不错,但是实际工程经验聊聊,也没有参加过真正的商业项目,对研究和工业界都不了解。在这样一种情况下,我最终选择了读硕士,想法就是简单地认为硕士可以增加实际工程经验,同时还可以给自己留出三年时间好好思考自己的未来。就是这样的想法令我读硕士初期有些迷茫,不知道自己是要作研究还是做工程。所以弄清楚自己读硕士的目的最重要,如果想作研究,那么我奉劝你读博士,选个好地方认认真真做5年博士,收获肯定不会少。如果想做工程,那么选择一个相对轻松的实验室,尽量找机会接触商业项目,多接触IT的方方面面,找到自己喜欢的。 找个适合自己的导师。导师是研究生阶段接触最多的人了,说严重点,他决定了你的未来,所以找个适合自己的导师就特别重要了。导师是否适合自己,这就需要去了解了。我当时找导师是根据兴趣找的。我喜欢看电影,就找了研究图形学方向的老师,因为可以学学怎么做特效。导师是否适合自己,或者说自己是否适合导师,还要看很多方面,性格如何,人品如何都很重要。还要学会和导师相处,导师看问题的出发点是自己,这可能与学生看问题的出发点截然不同,所以如何与导师相处也很重要。 一定要有计划。我在这一点上做的特别不好,所以感受很深。虽然有客观原因存在,但是我的计划不够详细彻底也是原因所在。读硕士最初的一段时间,我只是跟着师兄做研究项目,没有仔细考虑自己的未来,做了很多无意义的事情,导致现在的结果。虽然我不后悔和师兄一起搞研究,但是毕竟没有方向的工作应该算是无意义了。 学生时代就算结束了,不知道为什么,我没有太多伤感,仅仅怀念和实验室师兄弟一起拼搏的日子。 明天一段新的生活即将开始。

大陆信用卡购买kindle store中的电子书

相信喜欢读书的朋友都眼馋Kindle store中的电子书,我又何尝不是呢,不过kindle store中的东西不卖给咱们大陆人民。经过查阅网友方法和自己亲身实践总结,特地写这片文章分享大陆信用卡从kindle store中买电子书的经验。 首先要有信用卡,这个没问题吧。 然后注册Amazon帐号,这个也没问题吧。 清除Amazon中的地址信息(我是这么干了,没试过不这么干行不行)。 接着登录Amazon,进入kindle store,更改国家区域,手动(点击What’s this,然后有个修改链接)设定为美国。 设定美国的时候,应该会让填写地址和电话,网上随便搜个人的地址写进去。 搞定,可以买了,很简单。

遭遇NV顯卡門

這周二晚上回家,打開電腦,發現屏幕不能點亮,多試了幾次依然不能,就懷疑顯卡出問題了。 我的MBP買了將近3年,沒有apple care,所以壞了很危險,因為apple的維修收費實在是貴,如果顯卡壞了要換的話,花的錢購買個新機器了。但我懷疑我的電腦的問題就是去年NV GT8X00M系列顯卡虛焊的問題,希望能免費維修。 拿到維修點去檢查,當天就告訴我可以免費換主板,我也就放心了。 昨天下午拿回了電腦,結束了連續3天晚上沒有電腦的生活。 不過在這三天裡面,我讀了2本書,可謂高效啊。

皮克斯如何制作动画电影

上周三,听了一个关于自皮克斯动画工作室(Pixar Animation Studio)如何制作动画的报告,演讲者是在Pixar担任特效经理的沈沉博士。沈博士的报告非常精彩,也让我了解到了很多Pixar的“内幕”。 作为06年加入Pixar的员工,沈博士经历了Disney收购的整个过程。收购发生在沈博士刚刚进入Pixar实习一个月左右,他清楚记得那次宣布收购的员工大会。沈博士描述当时的情景时说: 当Lasseter宣布Pixar被Disney收购了,以后再也不是单独的一家公司而是Disney的3D部门时,全场几乎所有人都哭了。 这就是Pixar,一个像大家庭的公司,这也是Pixar的动画能打动所有人的原因。 Pixar的员工大致可以分为3类:1)动画师和导演,他们是Pixar的灵魂,是Pixar创造力的源泉,目前Pixar所有的创意都来自员工。;2)特效经理和软件工程师,Pixar的背后的支柱,任何技术上的突破都是这些工程师智慧的结晶,从renderman到Ratatouille中水的模拟,再到Up中衣服布料的模拟,都是这些工程师在背后默默付出成就的;3)联系动画师和工程师的manager,他们是Pixar内部的润滑剂,是动画师和工程师之间联系的纽带,从电影开始计划到最后的成片,每一步每一刻都要他们协调统筹。 Pixar动画电影的制作流程大概如下图所示(此图依据我听报告的印象所绘): 从图中可以看出,整个电影的制作工作可以分为两类:asset based(基于素材) 和 shot based(基于镜头)。Asset based部分的工作主要就是制作电影需要的各种素材,包括片中动画场景、人物模型、动物模型(design & modeling),人物服装、装饰(rigging & set dress)等等,还有模型的材质效果、着色效果(shading)等,这些素材都是贯穿整个电影的,同时这些素材也都不是始终不变的,模型师会根据导演的要求不断调整模型。Shot based部分的工作主要是跟着镜头走的,也就是说这部分工作基本是相互独立的。这部分工作包括创作故事(story)、剪辑故事(editorial)、场景模型布置(layout)、动画设计(animation)、各类模拟(simulation)、特效(effects)、光照(lighting)、渲染(rendering)等。 一部电影最重要的就是故事情节了,如果没有好的故事,再炫的效果也只是徒具其表,无法吸引观众。皮克斯深知故事的重要性,没有好的故事,皮克斯宁愿不拍电影。皮克斯认为好的故事源自生活,坚持要求自己的动画故事必须原创,而且绝不会购买任何剧本,所有情节都要员工自己创作。在好莱坞如今续集、翻拍如潮的日子,皮克斯能坚持这个原则,也是它独树一帜、深受观众喜爱的原因。皮克斯认为好剧本首先要能吸引自己的员工,所以一个好的故事被选为剧本的第一步,就是创作故事的作者必须在全部员工面前把这个故事讲一遍,如果员工在听这个故事的时候能被吸引,那么就说明这个一个好的故事。如果一个好的故事被提上日程了,那么主创人员(如果故事是你创作的,你有可能就是导演)紧接着要做的就是把这个故事的关键镜头动手绘制出来,然后对着这些镜头,主创人员再将这个故事将给公司管理层听,如果管理层满意情节了,那么这个故事就可以开始制作了。 确定制作电影以后,所有员工就开始为这部电影工作了。 动画师会将整个故事手绘出来,也就是创作这部电影的2D版本(也就是传统迪士尼动画了),这一步在皮克斯制作电影的过程中必不可少,因为通过这个版本的故事,主创人员可以进行剪辑(editorial),确立各分镜头等。在这一步完成以后,一部电影的整体框架就已经出来了,后面对于故事要做的仅仅是调整,除非万不得已,不会大改了。 模型师和美术人员就要开始辛苦了,为了创作出电影需要的模型和场景,这些工作人员经常需要实地考察,比如Up中的创作人员就真的包机去了委内瑞拉的Angel Falls实地考察,Finding nemo 的制作者为了渲染出真是的海底效果,都去考了深海潜水证下海去考察。拿到这些实地拍的照片,artist们就开始制作场景、模型了,通常皮克斯会为每一个动画角色制作一个小的实体模型,有时候也会制作一些场景的实体模型,比如Up中就真的造了一座卡尔的房屋,电影中能看到的房间摆着几乎全都有。至于创造角色,皮克斯的特点是角色全部卡通化,他们不会可以去追求角色给观众的真是感,而是尽量保持角色的卡通感觉,但在细节的地方尽量保持真实,比如皮肤和毛发之类。最重要的,皮克斯会为没个角色创作一个角色符号,比如Up中卡尔一辈子规规矩矩,做事情不会越雷池半步,他的妻子就和他不太一样,所以卡尔的角色符号就是正方形,他的妻子的角色符号是圆,卡尔的脸是方形的,手指头是方形的,眼镜也是方形的,家里墙上挂的照片只要出现卡尔就都是方的;卡尔的妻子就正好相反了,同样小朋友拉塞尔的性格是调皮,不守成规,爱冒险,所以他的角色符号也是圆圈,他的脸、身体都是圆的。这些细小的部分,共同构筑了皮克斯电影的精彩。Artist还要负责制作模型的衣服、材质等等,为整个电影的制作准备素材。开始制作电影以后,他们还会不断收到各方面的要求去修改模型,修改场景,光照,材质…。 一些特效指导或者软件工程师(也就是IT人士了)会为电影的制作做一些研发或者开发的任务。比如为了制作Ratatouille,研发人员需要根据动画的需求研究一些水的模拟,像下水道中的脏水,很急的水流,厨房中汤锅中的水等等,Up中衣服、床单等布料的模拟,10286个气球的动画模拟等,这些模拟技术往往都是皮克斯根据电影需求研究出来的,这也是CG研发人员在皮克斯的用武之地,皮克斯能够一直在动画界以技术著称,全是依靠这批研发人员在背后的支持。软件工程师的任务就是为artist使用的内部软件(传说pixar内部有一款功能比maya强大的多的建模软件)进行开发升级。 整个电影的动画是由动画师完成的,他们会为角色涉及动作,镜头的走位,角色的表情等等,当然他们只需要涉及关键的动作,而且不用担心衣服是怎么动的,毛发是如何飘的,火焰是如何喷射的,这些交给计算机就好了,这些全部由研发人员研发的模拟算法完成,IT人士又在这里立功了。:) 光照师会为整个电影涉及光照效果,可不要小看这个工作,整部电影的气氛都是依靠光照去烘托的。WallE中被污染的地球的效果就是光照师通过设计光照实现的,当然还有Finding Nemo中海底的效果。 按照流程,全部动画都设计完成,模拟算法也搞定了,光照也都设计妥当了以后,就是最终进行渲染了。这一步就和人没什么关系了,全靠计算机开足马力干活了。皮克斯有一个包含2000多台(我大概记得是这么多)计算机的渲染集群为最后的渲染工作服务,通常上映的电影一帧需要渲染几个小时,因此渲染一部电影也需要很长时间,所以任何一个地方出了差错,都有可能导致电影无法按时完成。Cars就是因为改动了某个地方而需要重新渲染,成为了皮克斯唯一一部跳票延期的电影。 电影制作完成以后,就交给发行公司去宣传发行了,这以后就是我们在影院看到的皮克斯动画了!

Mac下用tor翻越伟大的防火墙

其实很简单,写在这里,记录一下。顺便看看这个blog会不会被封。 首先下载mac版的tor了,在这里(请随便找个工具翻墙下载)。 安装tor,很简单,放到Application目录下即可。 关键:设置Mac的网络代理,在System Preferences->Network->Ethernet(如果你使用了airport或者vpn,请选择相应的位置)->Advanced->Proxies,如下图: 在 Web Proxy(HTTP)和Secure Web Proxy(HTTPS) 两处填入代理地址127.0.0.1:8118,如下图: 在 SOCKS Proxy 处填入代理地址127.0.0.1:9050,如下图: done!你可以翻墙了,还可以用tweetie哦,试试看吧。

医院过年

老婆前两天刚刚做了个小手术,要回复一个月左右,所以我们要在医院过年了。 这也是我们新婚后的第一个春节,没想到这么特殊,要在医院过。 这最近半年,又是找工作,又是我生病,老婆生病。半年经历了太多事情,感慨良多,最大的感受就是别的一切都是扯淡,身体健康是最重要的。 老婆刚做完手术,就接到了MSRA的正式offer,老婆一下心情打好,心情好有助于恢复啊,哈哈! 在医院不能上网,我就买了个联通的3G上网卡,爬上来看看。这个卡我的手机也可以用,这样过年就不至于太无聊了。 明年去学校后,一定和老婆好好锻炼身体!

District 9

要说这部《District 9》这部电影,必须从District Six说起,District Six是南非开普敦第六市政区(Sixth Municipal District of Cape Town),从1867年起就这么叫了。District Six住着以前的奴隶,工人,做生意的等社会下层人士,这些人来自世界各地,各种肤色,相当国际化。二战以后,南非这个国家开始实行一种种族隔离制度,要把District Six的居民强制搬到另外一个环境极其恶劣的鸟不拉屎的地方(天朝三峡搬迁是不是这样的),给出的理由很扯淡,说这里犯罪丛生,很不安全之类,实际上还不是看上了这块地段搞房地产开发。最后搬了很多年,搬了大约6万人(听上去很少)。最后当然这样的制度倒掉了,原来District Six的居民的合法权利也得到了承认,他们现在都在陆续搬回这块土地。 话说在种族隔离制度盛行的年代,有个南非小孩Neill Blomkamp把这些都看在眼里,记在心里。16岁的时候Neill已经是南非一位专业动画师了。18岁的时候Neill举家搬到了温哥华,他就到温哥华电影学校学习。毕业以后,Neill就在温哥华当地两个特效公司担任特效师。Neill擅长制作纪录片风格、手持摄像机风格、比较现实的真实特效。同时Neill还拍一些广告之类的小短片。 虽然现在种族隔离已经远离南非,但Neill当然还记得发生在南非的这些往事。Neill拍摄了一部短片来讨论这个主题,这部短片就是《alive in joburg》。Neill应该没有想到这部短片会改变自己的职业生涯,如果没有这部短片,Neill还得在特效界和广告界混上几年吧。 话说魔戒男Peter Jackson看到这部短片以后,被片子的那种纪录片拍摄方式、手持摄像机风格吸引,拍板让Neill来做著名游戏Halo电影版的导演。这个项目成立以后,不想没钱了,项目最终搁浅。Halo没得拍,魔戒男最后和Neill决定用不够的资金把《alive in joburg》改成电影《District 9》。敲定计划以后,Neill就开始干活了,他希望指环男的特效公司Weta负责特效,可是Peter告诉他不行,因为Weta正在忙着被变态级别上帝级别的詹姆斯卡梅隆的《阿凡提达》折磨,哪能抽出功夫搞这个啊,不过可以负责设计角色。Neill只好找了母校所在地温哥华的一家特效公司Image Engine来做了。话说Neill也真是胆大,自己本来就是菜鸟导演,这次只是拍自己的第一部电影,居然找来了同样没有做过一部电影特效的菜鸟特效公司Iamge Engine;不过幸好Image Engine没有搞砸(Image Engine真是伟大,因为其制作特效用了开源软件,就把自己的一些工具也开源了,别的公司可没这么好的。)。这样,就有了Neill的第一部电影,也有了一部很棒的科幻片。 《District 9》的风格与《alive in joburg》相似,还是手提摄像机的拍摄方式,纪录片的风格,这次更把电影做的像电视新闻采访。情节是《alive in joburg》的扩展与延续,当然也要顺带讽刺种族隔离了。《District 9》可以说是近几年来最出色的科幻电影了,具体点是最优秀的外星人电影,把种族隔离制度揉进电影以后,让它一反一般外星人科幻片的套路,令人耳目一新。具体的剧情我就不透漏了,感兴趣的一定不能错过。(另:影片口味略重,最好不要再吃饭后一个小时内观看;承受能力强者除外)

一张海报

这是1991年《黄飞鸿》的一款被放弃的海报,不过我觉得这是最好的一款。这款海报很好的体现了当时中国社会的中西文化冲突,这也是《黄飞鸿》这部电影能摆脱纯粹动作片的地方。 其实我是想测试一下lightbox2插件。