8 章(第1/3 页)
说不定他可能会改变下自己的看法。
不过,我们还留下了最后一个问题。
为什么如果这个世界是虚拟的,就会出现纠缠现象呢?
换句话来说,为什么创造我们世界的程序员非要把N个粒子共用一个波函数来表达呢?
其实对于这个问题我们可以去请教一下现实世界的资深码农。
你询问任何一位有经验的码农,他都会告诉你,这种做法很自然很正常啊,我们开发任何软件的时候,如果能用不同方法实现相同甚至比较相似的体验,那么一定要采用最简洁和最节省资源的做法,如无必要,勿增开销。
这几乎是程序员们的至高信条,任何有经验的程序员都知道不要过多去关心某些刁钻用户的古怪需求,或者为了防止某些技术黑客对系统的各种细节变态探究而花费过多精力。
一个优秀的开发工程师知道更应该关心的是如何用更简单的做法满足好99%的普通用户的正常需求,而不是浪费太多时间在极少数用户身上。
只有那些没经验的新手菜鸟,才会为了对付这些难缠用户去多花费掉N多倍的资源和精力。
如果被技术总监发现居然把系统弄得如此臃肿,那肯定少不了要挨骂重写。
愤怒的老板
所以,对于模拟虚拟世界的粒子来说,既然多个粒子发生了纠缠,那么程序员把它们简化合并,用一个函数来精简处理以尽量节省资源也就是很正常很合理的做法。
如果我们从游戏设计的角度来看,这种作法其实运用的也非常普遍。
一个最常见的运用就是在SLG类型的战略游戏中,当游戏设计师希望表现出一个军团方阵的时候,就会把组成方阵的很多士兵当做一个对象来处理。
这样就可以简化计算,同时也保持良好的方阵队形。
全面战争游戏中的军团阵列
这些被当做单一单位处理的电脑士兵集群,其实就是一种处于纠缠状态的个体集合,它们会保持一致的行动,一致的方向,接受一致的命令,如果它们在地图上不慎被分开了,它们依然会保持相当高的行动一致性,因为它们在计算逻辑上依然是一个整体。
万国觉醒中的军团单位
这种计算逻辑上处于纠缠状态的集合体,无论它们其中的某些个体分开多远,你都可以察觉到它们远超其他分散个体的一致性,你可以很容易把它们和零散的个体单位区别开,无论我们如何操作零散的个体,