高台跳水与“象、数、理”
 
作者:一叶轻舟 发表于:2008-08-13 19:45 点击:224 留言:1
     
平均得分:0.0

本文为读书心得。

假设现在水立方要做一个10米高台跳水的三维动画演示,看看我们要怎么做。用户最终看到的应该大概是这样的,一个人站到高台上,然后垂直落下,进水后会溅起水花。要做得感觉比较真实,可能有两个关键点,一个是下降的速度不是均匀的,如果画面中是匀速下降肯定看起来不像,还有就是落水的时间不能太长也不能太短了,还要就是要有些水花。用户不会关心人的长相等,这个不用去表现。

人眼睛能够看得到跳水这种现象,同时人也能感受到时间和速度,虽然不做精确测量,但如果动画的时间和速度偏差太大,人是能判断出来的。为了处理这个事情,我们可以把它划分为“象、数、理”三个层面。

象,现象,通过人的眼睛等感受到的结果,在画面表现中要有人、高台、水池、水花等。

数,数字,人感受到的不只是简单的画面组合,虽然是定性的把握但在动画表现中还是要依赖于相对精确的数值,比如多少秒内人会到达水面,对于24帧每秒的动画,每一帧中人距离水面的高度是多少。

理,道理,每个现象中体现出来的数字都不是任意的,都是有一定规律的。这个现象比较简单,因为我们有牛顿,通过其三大定律推演的自由落体公式,距离=4.9*时间平方,可以知道人会在约1.4秒后落水,动画需要做约34帧,并可以算出每帧中人相对高台以及水面的距离。

这样做出来的动画看起来才会显得真实,游戏里面很多场合都要用到类似的处理,比如通过物理计算来得到光影、爆炸、碰撞效果等,甚至已经有公司把常用的计算放到了专用显卡中,作为硬件来卖。

通过三个概念范畴,我们能够去把握各种各样复杂的事情。比如人活着这种现象,很复杂,人的寿命就是一种数,它不是任意的,虽然我们现在还不能精确精算,但我们知道普通人最多活一百来岁。

这种概念范畴,古人总结出来的,如果简单地用“朴素的辩证法”来定论之,就太片面了。这种概念范畴,,像“原子”一样,理应衍生出更多美好的结果。