他没有去定义每一颗星星的运动轨迹。
他只是下达了一个“召唤星空”的命令。
这背后,到底隐藏着什么样的世界观?
“我们都想错了。”
钱学敏缓缓转过身,她的声音不大,却瞬间吸引了所有人的注意。
“我们一直试图在‘仓颉’语言的‘语法’层面,去解决‘行为’的问题。但我们忽略了,老师给我们的启示里,行为,或许根本就不需要被‘描述’。”
“不需要被描述?”赵成第一个提出了疑问,“钱总师,您的意思是?”
“我的意思是,行为,应该是‘属性’的一部分。”
钱学敏走到白板前,擦掉了一片区域,然后写下了两个词。
“物理引擎”。
“动画系统”。
“各位,我们想象一下。在一个真实的世界里,一个苹果从树上掉下来,需要我们去编程告诉它‘每一毫秒,你的Y坐标应该减少多少’吗?”
“不需要。”钱学民自问自答,“因为它拥有‘质量’这个属性,它处在‘重力场’这个环境里。这两个‘属性’,决定了它‘下落’这个‘行为’。”
“所以,我们为什么不能在‘仓颉’的世界里,也引入这些‘属性’呢?”
她拿起笔,在白板上写下了一段全新的,充满了颠覆性的“仓颉”代码。
创生 对象 苹果。
其重 壹。
其位 (拾,佰,拾)。
“看,我们只是定义了苹果的‘重量’和‘位置’。然后,我们的世界里,有一个无处不在的,内置的‘物理引擎’。它会读取到‘苹果’这个对象,拥有‘重量’这个属性。于是,它就会自动地,去计算苹果下落的轨迹。”
“我们作为‘画师’,根本不需要关心苹果是怎么掉下来的。我们只需要给它一个‘重量’,然后看着它掉下来就行了!”
“同样,一个人物角色,我们不需要去定义他走路时,左腿该怎么摆,右腿该怎么抬。我们只需要给他一个‘动画控制器’的属性,然后告诉这个控制器,‘播放走路动画’。”
创生 对象 士兵。
其动画 调自 “士兵动画集”。
其状态 行进。
“看!我们依然没有写任何关于‘过程’的代码!我们只是在‘定义’!定义苹果的重量,定义士兵的状态!”
“‘行为’,被我们从‘语法’的枷锁中,解放了出来!它变成了一