当然需要算法。
对个人发展来说,不会算法,进不了大厂,因为不论以后用不用算法,大厂面试一定会考算法!对与游戏而言:
真实感图形学:
渲染管线:计算机系统提供的,应用层把几何数据和拓扑结构设置好,通过GPU进行几何运算、光栅化处理、像素处理,最终渲染出来的完整过程。通常每个步骤都可以使用Shader来精确控制GPU的运算。
几何体的变换:除了基本的平移、旋转,还有顶点融合、变形等。
颜色模型:颜色的计算机表示。
光照模型:各种不同的光源,反射/折射/散射,局部光照算法,全局光照算法,光线追踪等等,应该是游戏引擎最重要的,也是最复杂的。
纹理算法:纹理怎么显示在几何体表面。
阴影算法:模型在某种光照模型下,阴影的处理算法。
动画算法:骨骼动画、IK、FK等等,动画算法也是比较复杂的。
其他算法:太多了,没法一一列举,比如毛发、湖面、植被的模拟之类的。
人物模型:
移动:游戏中NPC和玩家角色直接的追逐、闪躲、移动模式、群聚行为的模拟算法。
导航:自动寻路。
对话:玩家和NPC直接的对话系统。
有限状态机:FSM,明确状态和状态之间的转换规则,可以用来解决程序中的涉及到多种状态的问题。
行为树:NPC的行为进行列举,模拟根据不同的交互操作,产生某种可与预见的行为。
模糊逻辑:凡事不只是0和1,可以在区间进行随机,引入决策的不确定性。
规则式AI:类似与Prolog语言,定义好规则表,输入条件根据规则表进行推导。
遗传网络:蚁群算法、模拟退火算法。
所以算法还是很重要的!!!