2009-10-18

Are you mature?

做到你就成熟了 的24条。



1、遇到不想回答的问题,直视对方的眼睛,微笑、沉默。

2、走路抬头挺胸,心情不好时,不想跟人招呼,点头微笑,径直走过。

3、请记得,好朋友的定义是:你混的好,他打心眼里为你开心;你混的不好,他由衷的为你着急。

4、做自己的决定。然后准备好承担后果。从一开始就提醒自己,世上没有后悔药吃,而我永远有个plan B。

5、自己分内的事情,努力做到一百分。

6、接受自己不过是个“小小的我”,但眼里要能够悦纳“大大的世界”。

7、If you love something, set it free, if it comes back to you, it is yours, if it doesn't it never was.

8、不要试图给自己找任何借口,错误面前没人爱听那些借口。

9、不要随意发脾气,谁都不欠你的。

10、不说谎话,因为总有被拆穿的一天。

11、别低估任何人。

12、你没那么多观众,别那么累

13、过去的事情可以不忘记,但一定要放下。

14、别人说的记在脑袋里,而自己的,则放在心里

15、社会是有等级的,很多事不公平。别抱怨,因为没有用。

16、你永远没有你自己想象中那么重要。

17、钱能解决的问题统统不叫问题。

18、无论何时说“我爱你”,请真心实意。无论何时说“对不起”,请看着对方的眼睛。

19、永远不要以貌取人。

20、找点时间,单独呆会儿

21、不是自己的东西不要,就是再喜欢也不行,要懂得放弃。

22、不要觉得是生活亏欠了你,其实是我做的努力不够。

23、慢慢地说,但要迅速地想。

24、努力向前,再努力向前,再努力一下下,愿望就会实现

2009-10-13

Hong Kong View Pictures.

昨天下午5:00出发,从港大后面开始爬太平山,拿着相机随了不少照片。废话不多说,上照片啦。




鳞次栉比


维多利亚港黄昏


中环一隅

维多利亚港夜色

2009-10-12

Poem of Tang Dynasty(I)

今天,翻了实验室的一本唐诗鉴赏辞典,读到了一些好句,由于本人偏好,摘录的主要是写景的,而且是青山绿水之景,非边陲塞上之荒凉和悲怆之景也。

居高声自远,非是籍秋风。  《蝉》——唐,虞世南。Leepy点评:清高之态,油然而生。

惟有门前镜湖水,春风不改旧时波。 《回乡偶书》——唐,贺知章。Leepy点评:在外之人,读此诗句,无一怀乡

开轩面场圃,把酒话桑麻。 《过故人庄》——唐,孟浩然。Leepy点评:场圃,打谷场。传神描写"农家乐"之场面,相当于城里人的“大排档”

野旷天低树,江清月近人。 《宿建德江》——唐,孟浩然。Leepy点评:低和近两字,作动词用,点睛之字也。

乱入池中看不见,闻歌始觉有人来。 《采莲曲》——唐,王昌龄。Leepy点评:这就叫先声夺人。

明月松间照,清泉石上流。 《山居秋暝》——唐,王维。Leepy点评:学习摄影者应通晓此意境。

雨中山果落,灯下草虫鸣。 《秋夜独坐》——唐,王维。Leepy点评:与”花落知多少“异曲同工,一睡一坐之差也。

花落家童未扫,莺啼山客犹眠。 《田园乐》——唐,王维。Leepy点评:悠闲,田园。

相逢意气为君饮,系马高楼垂柳边。 《少年行》——唐,王维。Leepy点评:江湖义气,风流倜傥。

青山横北郭,白水绕东城。 《送友人》——唐,李白。Leepy点评:多美的构图呀!李白虽豪放,此句也可见其细腻。

且就洞庭赊月色,将船买酒白云边。 《游洞庭》——唐,李白。Leepy点评:豪情万丈谁可比?

穿花蛱蝶深深见,点水蜻蜓款款飞。 《曲江二首》——唐,杜甫。Leepy点评:多么和谐的美景呀。


(To be continued)

2009-10-11

Hong Kong University and HK Night Scence

昨天下午,拿着我的卡片机出去拍了点照片。可怜我的单反还没有能够买入,一则Money不够;二则看了牛人的话,照片拍摄的好坏关键不在于前面的“头”,而在于后面的“头”。呵呵,那就拿着可怜的卡片机来练练后面的“头”吧。


HKU附近的楼


港大的学生会永恒的主题


俯视


华灯初上


夜意阑珊

港大后面的山


港大学生会社团宣传长廊

码头(未知名,山道尽头)夜景


悠闲的居民

水光一色

静谧

夜已深......

2009-10-05

Hefei Lighting Show to celebrate mid-autumn festival.

2009年10月3日,中秋节,合肥市政府所在地天鹅湖进行了盛大的灯光秀。照片是用卡片机拍摄的,凑合看。






2009-09-28

Da Yu Shan Tour......

昨天,同实验室一帮人游玩了香港的大屿山。天气不错,伴阴半晒的,非常适合于观光。我们早上10:30出发,23路公交到金钟,之后转地铁到地铁,辗转到了東涌。后又换乘缆车,估计是我坐过的最长的缆车,最后终于到达了大屿山大佛之下。

山上空气很清新,看着群山和大海,真是流连忘返。呵呵,废话不多说,上图吧!


缆车往下看,曲径通幽


香港机场


俯视快艇

远看大佛

大佛随从



庄严的佛


寺院


马上要在香港召开的东亚会


维多利亚港灯光show

2009-09-20

A glance of Siggraph 2009 papers.

SIGGRAPH向来是Computer Graphics研究的风向标。今天粗略过了一遍SigGRAPH2009论文,乱弹一下心得:
1.hair modeling and simulation and rendering 主题真是耐做,有两篇都是关于此主题的:“Example-based hair geometry synthesis ”和“Detail preserving continuum simulation of straight hair ”。

2.”Fluid simulation“研究同样是常青树,专门有一个Session。
3.国内的强人“Kun Zhou“还是发了3篇论文。

4.最”牛气“的论文是”Semantic Deformation Transfer“,名字很短,正文只有6页,12篇参考文献;

5.有两个关于”Character animation”的session,8篇论文,占到总论文的10%;

6.有两个跟physics相关的session,“Physically based modeling: from contact to capture”和“Reduced physics for animation”,拓展一点,如果把“Creating natural variations”自然也看出跟物理相关的话,总共有三个session。物理是王道呀。

7. simulation方面,除了“Fluid simulation”session,还有“Directable, high-resolution simulation of fire on the GPU“,“Detail preserving continuum simulation of straight hair ”和“Interactive simulation of surgical needle insertion and steering ”。

2009-09-16

HK Building........

Cg Tutorial的“25_uniform_fog”例子用来讲述如何在场景中加入雾化的效果,不过,那个例子画的楼宇,跟香港的鳞次栉比的大楼,确实有的一拼。
这个是真实的照片:

 这个是生成的照片:
^_^

2009-09-15

HK No.8 Typhoon.

9月14日晚上6:00,台风Koppu 掠过香港,香港预报了8号风球。我第一次离台风这么近。晚上同大家一起聚餐后,8点多早早回家了,只感觉到风力很大。由于我住的地方没有对外的窗户,所以一夜没有感觉到台风的厉害。不过,听他们说,晚上1点左右,窗户被吹得噼噼啪啪的响。

第二天一早,到学校的途中,发现树被吹断了很多,可见台风的威力,用手机拍了几张,效果不佳。

2009-09-13

Oops, I got it.

前天出了一个问题(http://leepyzh.blogspot.com/2009/09/cg-lighting.html),是在看Cg例子“09_vertex_lighting”的时候,为了计算光照,他有一个对modelview矩阵求逆的过程,这是由于GPU顶点程序的顶点位于model坐标系,将灯光和眼睛的位置逆变换到物体的位置空间,这样在同一空间里面可以求解。

看了这个例子后,总觉得求逆是一件费时的事,干吗不把顶点坐标和向量变换到世界坐标系?这样也可以在同一空间求解呀。但是修改程序后,感觉灯光的位置有些偏差,百思不得其解。Cg程序如下:

#if 1
//here is my code to change the vertex coord & normal to world space

float4 worldcoordinate = mul(modelToWorld, position);
float3 P = worldcoordinate.xyz;
float4 Normal4;
Normal4[0] = normal[0];
Normal4[1] = normal[1];
Normal4[2] = normal[2];
Normal4[3] = 1;
float4 N4 = mul(modelToWorld, Normal4);
float3 N = N4.xyz;
N = normalize(N);

#else
 //here is the formal code

float3 P = position.xyz;
float3 N = normal;
#endif

今天,看到“18_cube_map_reflection”的时候发现他用到这个想法。呵呵,至少心里放心了。看看例子的代码,比我的简洁多了:
// Compute position and normal in world space

float3 P = mul(modelToWorld, position).xyz;
float3 N = mul((float3x3)modelToWorld, normal);
N = normalize(N);

经过盘查,我终于找到了问题所在,原来是向量相乘的时候出了问题:

Normal4[3] = 1;

其实对于向量来说,第四维是没有意义的。如果赋值为1,那么需要将原点看成起点,在两个变换完成后,然后相减得到新的向量。最简单的方法,将第四维赋值为0。从几何上可以这么理解:平移不改变向量。

到此,似乎问题已经解决。当接着往下看Cg tutorial时,又让我吃了一大惊,他说:

If the modeling transform scales positions nonuniformly, you must multiply normal by the inverse transpose of the modeling matrix ( modelToWorldInvTrans ), rather than simply by modelToWorld.

是呀。旋转和平移时,点的相对位置不会改变,所以直接变换向量没有问题;然后,不均匀的缩放时,平面发生变形,此时,法向不能简单地乘以变换矩阵而得到。

网上一位老兄给出了总结,我想应该是对的:

1.如果变换模型位置的仅仅是rotation 或 translation, 可以用该Matrix直接作用于法线,获得最终的法线.

2.如果传输模型的Matrix 是同比例scale, 用该matrix作用法线后,获得的新法线需要重新normalize

3.如果非同比例scale的matrix,必须用该matrix的inverse后,再transpose来作用于该法线。

4. 具体内容可参考: Real-Time Shader Programming 82-83页。

Finally, 看来“09_vertex_lighting”的求逆阵还是个最好的、不会出错的解决方法。