在顶级游戏开发的过程中需要怎样的编程实力?
1: 专业知识和基础。
在任何行业坚实的基础都是最重要的必备素质和能力,这包含了计算机的知识比如组成原理,程序语言,数据结构等等。包含了数学的知识比如3d数学,线性代数,等等。也包含了游戏开发的知识比如游戏的各种系统,引擎,等等。
2: 解决问题的能力。
很多学生和新人,都觉得真正在公司工作要写“完美的代码”,“*优化的程序”等等,实际上,在公司工作,大部分的时间你不一定是在写代码,或者说很多时候你是在“和恶心的限制下”写代码和解决问题,写出“完美的代码”有时候是不可能的或者不现实的。解决问题的能力包括你遇到了技术或者设计的问题之后,你如何分析,尝试和高效率的解决问题,你会遇到“这个引擎不支持但是我也要做出来某个功能,但是又不能花太多时间”,你会遇到“这个很旧的codebase我必须要想办法修好某个问题但是我没办法大改”种种问题,这些问题都是综合的难题,不完全是技术程序问题,程序员的一大工作内容就是解决开发中的问题而不是纯写代码。
3: 和他人合作的能力。
3A游戏需要的团队基本在100人以上,2-300人很常见,程序员需要和各种开发人员打交道,通常一个程序需要支持几个美术或者design,如何和不同领域的人顺畅的工作让大家高效的进行是非常重要的能力。这项能力可能包含,你需要耐心的和非技术的人员解释技术限制,你需要想办法在不浪费美术的时间的情况下帮他们解决问题,你需要在别的部门出现困难的时候作为他们的坚强后盾让团队度过难关。和人沟通,让人信任你的能力不只是团队成功的关键,还是你个人成功的关键。
4: 理解自己开发的游戏。
理解自己开发的游戏类型,了解并知道如何改进,如何优化,把自己当成用户玩家,去体验感觉这个游戏的优缺点,发现了问题如何改进,优点如何更优化?这些都是需要积累和试验的。
总结,游戏开发的程序不是单纯的写出“漂亮的代码”,综合训练自己的能力,把自己看成优秀的开发人员,而不是纯写代码的coder很重要。
*文章内容和图片均来源于网络,如有侵权,请联系删除。