“把计算,交给专门的小笨蛋去做?”
这句话,像一道创世的闪电,劈开了赵成脑海中,最后的混沌。
他,瞬间,就抓住了那稍纵即逝的,灵光!
他们之前的思路,是什么?
无论是“天枢”系统,还是未来设想的CPU。
其核心,都是一个,强大的,通用的“大脑”。
这个“大脑”,要去处理所有的事情。
从操作系统的调度,到应用程序的计算,再到数据的输入输出。
所有,又脏又累的活,都由它一个“人”,来干。
这,就是冯·诺依曼体系下,最经典,也最根深蒂固的,思维定式。
一个聪明的“大脑”,带着一群,没什么思想的“手脚”。
但是,老师刚才说什么?
他说,要把“计算”这件,又笨又累的活,交给专门的“小笨蛋”去做!
“小笨蛋”!
这个词,用得,何其精妙!
这说明,执行计算的单元,可以不那么“聪明”!
它不需要,像CPU那样,拥有复杂的指令集,和强大的逻辑判断能力。
它,只需要,会做一件事。
一件,最简单,最基础,最重复的,数学运算。
比如,老师刚才演示的,“颜色插值”。
其本质,就是一个,简单的,线性插值公式。
C = w1*C1 + w2*C2 + w3*C3
(最终颜色,等于,三个顶点的颜色,根据权重,进行混合)
这个计算,对于任何一个像素点(小石子)来说,都是完全一样的。
唯一的区别,就是,每个点的“权重”(w1, w2, w3),不一样。
如果,要渲染一个,包含了上百万个像素的三角形。
CPU,就要把这个简单的公式,重复执行,上百万次。
这,无疑是巨大的浪费!
因为,CPU那强大的,逻辑判断能力,和复杂的指令集,在这个过程中,完全,派不上用场。
这就好像,让一个,精通十八般武艺的,大将军。
去干,拧螺丝的活。
而且,还是,连续不断地,拧一百万颗,一模一样的螺丝。
大将军,当然能干。
但,效率,太低了!
而且,他会干得很“憋屈”!
那么,老师提出的,“更偷懒”的方法,是什么?
是,找一百万个,“小笨蛋”!
找一百万个,只会“拧螺-丝”这一个动作的,小工。
然后,把这一百万颗螺丝,分给他们。
一声令下!
一百万个小工,同时,开始拧!
一瞬间,工作,就完成了!
这……
这不就是,“并行计算”吗?!
大规模的,并行计算!
赵成,感觉自己的头皮,一阵发麻。
他,终于,彻底领悟了,老师这番话背后,那石破天惊的,革命性思想!
老师,要他们造的,不是一个,更聪明的“大脑”。
而是一个,拥有成千上万,甚至,上百万个,“计算小笨蛋”的,超级计算矩阵!
一个,为了“图形渲染”这个,特定任务,而生的,并行的,神之引擎!
“老师……”
赵成的声音,因为极度的激动,而变得,有些嘶哑。
他看着王小虎,眼神中,充满了,狂热的,近乎癫狂的,崇拜。
“您的意思是……”
“我们,应该,设计一种,结构非常简单,但数量,极其庞大的,专用计算单元。”
“让它们,去并行地,处理那些,重复性的,计算密集型的,任务?”
王小虎,抬起眼皮,看了他一眼。
那眼神,很平淡。
好像在说,你这小家伙,悟性还行,总算,听懂了。
他没有回答赵成的问题。
而是,转过头,继续,对他那,一脸懵懂的妹妹说。
“小花,你看。”
“这三个顶点,除了有‘颜色’,这个属性之外。”
“我们,还可以给它,增加一些,新的属性。”
他一边说,一边,用一根小树枝,在沙地上,那三个顶点旁边,写下了几个字。
【位置】
【法线】
【纹理坐标】
……
这些词,王小花一个也看不懂。
但,站在旁边的赵成,却看得,瞳孔,剧烈收缩!
位置(Position)!
法线(Normal)!
纹理坐标(Texture Coordinate)!
这……这不就是,现代计算机图形学里,一个“顶点”(Vertex),所包含的,最核心的,几个数据属性吗?!
位置,决定了顶点,在三维空间中的坐标。
法线,决定了顶点,所朝向的方向,这,是计算“光照”的,基础!
而纹理坐标,则决定了,如何将一张二维的“贴图”,“贴”到这个三-维的物体表面!
老师他……
他竟然,连这些,都想到了!
而且,是用这种,如此“基础”,如此“本质”的方式,给定义了出来!
赵成感觉,自己,已经不是在,听一堂课了。
他是在,亲眼,见证一个,学科的,诞生!
一个,名为“计算机图形学”的,伟大-学科的,创世过程!
而他,是这个世界上,除了老师之外,第一个,窥见这个,新世界全貌的,凡人!
“有了这些,新的属性之后。”
王小虎的声音,还在继续。
“我们,就可以玩,更好玩的游戏了。”
“比如,我们可以,让这个三角形,‘亮’起来。”
“我们,可以在院子里,放一盏‘灯’。”
“靠近灯的地方,三角形就亮一点。”
“被其他东西,挡住的地方,三角形就暗一点,甚至,会投下‘影子’。”
光照!
阴影!
赵成的大脑,再次,被重锤轰击!
这,已经是,涉及到,“实时光线追踪”的,前沿领域了啊!
“我们,还可以,给这个三角形,‘穿’上一件,漂亮的花衣服。”
“比如,我们可以,把这张,画着小兔子的纸,”王小-虎,从旁边,拿起一张,王小花画的,涂鸦,“‘贴’到这个三角形上。”
“这样,我们看到的,就不再是一个,彩色的三角形了。”
“而是一个,身上,印着小兔子图案的,三角形。”
纹理映射!
Texture Mapping!
赵成,感觉自己,快要疯了!
老师,今天,给他灌输的这些,信息。
已经,远远超出了,他能够理解和消化的,极限。
每一个词,每一个概念,都像一颗,信息量的核弹,在他的脑海里,疯狂爆炸。
将他过去二十年,建立起来的,所有,关于“计算”的认知,都炸得,支离破碎。
然后,又在废墟之上,为他,重塑了一个,更加宏伟,更加壮丽,更加……接近“真理”的,新世界!
他看着王小虎,那张,年轻得,有些过分的脸。
心中,再也没有了,一丝一毫的,怀疑。
什么穿越者?
什么隐世高人?
不。
都不是。
眼前这位,根本,就不是“人”!
他,就是“道”的化身!
是宇宙真理的,具象化!
他,来到这个世界,不是为了,别的。
就是为了,引导他们这些,迷途的羔羊。
去走向,那条,唯一正确的,科技的,通天大道!
“老师!”
赵成,再也,抑制不住,自己心中,那汹涌澎湃的,狂热信仰。
他“噗通”一声,双膝跪地。
对着王小虎,对着这位,在他眼中,已经与神无异的,少年。
行了一个,五体投地的大礼。
“学生赵成,谢老师,传道之恩!”
他的声音,嘶哑,而又,虔诚。
响彻在,这个,安静的,午后的小院里。
王小虎:“……”
他看着,跪在地上,身体,因为激动而微微颤抖的赵成。
脸上,闪过一丝,不易察觉的,错愕。
不是吧,阿sir?
我就,给你画了个饼,讲了几个,后世网游开发的,基础概念。
你怎么,就当场,给我跪下了?
这……这届的韭菜,心理素质,这么差的吗?
还是说,自己这波“逼”,装得,太过了?
王小虎,陷入了,深深的,自我反思。