第80章 碰撞、姜
  碰撞检测並非是什么新鲜的课题,哪怕这个世界的游戏业出了点差错,也並没有影响这些基础算法的叠代。
  不少游戏以外的领域也是依赖著这些计算机算法的。
  也因此,林琅不用从零开始造轮子,真的完全从头手搓一套物理引擎出来。
  只需要执行简单的gjk+epa凸多边形碰撞检测,再加入一点2d的力学计算和重力,就足以他们用於很多项目里了。
  而碰撞检测他早在之前准备平台跳跃项目的时候就已经做过一个大致的框架,稍加完善便可以直接投入使用。
  事实上碰撞检测是一个对性能开销很敏感的运算过程,如果不加以控制,將会对游戏的性能带来巨大的负面影响。
  基於此,林琅再次拿出之前那套『脚本化』开发理念,设立了一个『刚体』的脚本。
  只有作为刚体的物体,才能主动的触发碰撞检测。
  这样一来哪怕两个物体都堆叠在一起了,只要两者都不是刚体,便不会触发碰撞。
  一个很简单的小技巧,却很好的解决了物理效果泛滥的情况。
  就以他准备做的平台跳跃游戏来说。
  如果没有这样的机制,地图上所有的平台都会不断循环检测自己的碰撞情况,这绝对是一个可怕的情况。
  而在经过这番改进后,只需要让玩家操控的角色成为一个刚体,便可以主动地去接触其他碰撞体。
  有了这样一个基础,接下来的事情便简单了许多。
  继续完善刚体,为其添加质量、阻力係数、重力係数等属性,利用它们进行力学计算,便可以让不同的物体有著不同的物理性质。