游戏开发过程中,最需要普通程序员还是资深程序员?
应该说是需要普通程序员和资深程序员以正确方式配比从而形成有效的团队, 不要把程序员想象成乐高积木简单量化。团队更像一个生物,是一个复杂的有机体。好的程序员会提升这个生物的dna水平!
具体在开发中的资深程序员呈现是:
决定技术高度:这里高度包括规模的把控能力,重要技术的突破(比如育碧系游戏中的动画,图形和破坏等等), 棘手问题的处理等等。技术杠杆:资深程序员在大量的技术方案制定中起到重要作用,,最后可能程序是普通程序员写的,,但是其中融合了资深程序员的设计在其中,这个对团队来说是性价比极高的一件事。技术基因打造:技术文化营造,底层代码质量把控,,这些决定了团队的进步速度,,以及给定技术方案下实现的质量和开发效率。
然后就是不要把复杂问题简单化。这里只是谈到很有限的一部分,大量情况下你会发现没这么大的作用。比如团队就处理很简单的小游戏的时候,所谓资深程序员是一个不爱打交道的人,团队因为各种原因限制了资深程序员的发挥······具体问题具体说了。
游戏行业和其他行业的资深程序员对比。
首先这个资深程序员就是单纯指技术综合实力强的程序员。和年龄、从业时间、头衔都无关。
3a大作中尤其是强技术类型的,其规模复杂度和技术深度的挑战都非常高。另外大量的作品在多年间保持一代代的出,,中间在不停的进化, 对开发效率要求也不低,横向对比不输于大型的商业软件,能够hold住这些的程序员,起码不比这些领域中的程序员差。
另外像cppcon,siggraph这种会议上,也能看到领域重叠的其他程序员和研究者的成果,也是一样的结果。
不屑于开发游戏的顶级程序员,如果来开发游戏的话也不会成为真正顶级的程序员,真正顶级游戏程序员对游戏的热爱和理解是必要条件。
例如在《荒野之息》这种系统复杂的游戏中,普通程序员是否会有瓶颈?
普通程序员:普通程序员的瓶颈可以通过模块的设计,把大问题分治成这个程序员能够承受的松耦合的小模块,这样复杂的游戏就简化成可控的简单模块了。如果不能分离处理(这种情况有的),普通程序员处理不来那就是会成为瓶颈。