游戏开发论坛

 找回密码
 立即注册
搜索
查看: 14633|回复: 6

游戏主程的5点责任

[复制链接]

6

主题

40

帖子

67

积分

注册会员

Rank: 2

积分
67
发表于 2010-3-12 22:19:00 | 显示全部楼层 |阅读模式
http://songxiaoyu8.blog.163.com/blog/static/2081812820102125274722/

   为啥突然写这篇文章哪?因为和一个巨人的朋友谈主程的职位问题,谈完后我发现好像不太对劲,引起我思考了好久,因为这两年太安逸了,感觉到比较可怕。那就把这些年见过的主程,我认为的主程,我对于主程的思考,和主程应该承担的责任写下来。

    有些人,工作了很多年了,但差不多每年换一次工作,因为很多游戏研发周期只有1年多,结束就走人。然后最后手里会积累大量的代码资源,这些资源有可能是别人的,也肯定有自己的一部分,但是这个时候如果没有融汇贯通,那么这些东西都不是自己的,他手里的资源也就像一个人家里买了很多书但是从来不看一样,暴殄天物,可是一般情况一个人也看不了这么多的东西,最简单的道理就是msdn了,这就有了第一点的要求,能够进行大量的信息索引。就是说一个主程必须要有足够多的见识,同时必须要能够快速针对当前项目碰到的问题定位,并且在自己的知识库里找出来。

   当然我们不可能储存足够的信息在以后的工作中来用。但是必须要有快速上手一个新的项目的能力,如果项目中有大量的超出自己知识范围的东西存在,那么我的建议是放弃在这个项目中间做主程,因为无法准确评估项目需要开发的时间,无法把握功能难点。

    当然有很多人对公司都是很忠诚的,反正由于某种原因,你进入到这个公司的时候,人家就是主程了,而且在公司里这个职位当了好多年,这种人的优点是对于项目的某种技术难点有一套成熟的解决方案,或者是他对于公司里长期用的引擎或者某个模块很熟悉,还有就是他进入公司的时候带来了某种革新(比如自己带着某种引擎,或者自己有半成品的游戏),反正就是有特长的人了。这就是主程的第二个要求,必须擅长一套自己的开发模式,就是有某个项目要做的时候,必须用自己的这个特长给出解决方案。

    主程的第三个要求就是架构师的能力,这点其实是在前面两点之上的东西。以mmorpg为例,在游戏的整个大框架内那些东西是重点,在每一个组件的循环中,那些组件与另外一个组件有交集,那些组件依赖于某个特定的项目很重要。客户端中,脚本服务,物体管理服务,UI服务,渲染服务,网络服务是最大的模块。而游戏性相关密切的东西都在物体管理模块中进行逻辑上的数据更新,而又必须在UI上进行更新,从而反作用于渲染模块,而大量的信息会从网络部分流过来,渲染模块如果有好的引擎并且对图形熟悉的人在开始的时候把风格定好那么就进入游戏逻辑的部分了。这个时候UI的层次又是考察一个主程能力的时候,很多人的逻辑就是这个时候开始乱的,从而导致了object的管理和UI内容最后混合在了一起,有些最终还和渲染扯到一起,这些东西必须在一开始的时候注意。完美的架构固然是不可能产生的,但是该注意的东西还是要的。

    现在越来越花哨的各种shader特效也成了主程的一个必修课,就是做主程必须要会写很炫丽shader,而且会改进这里面的算法,这个我总感觉有点舍本求末的感觉。上研究生的时候我最大的一个体会是对于一个图形算法再改进,都会有更好的算法出现,而且这个改进好像是无止境的,光照的算法每年都有人发论文,每年都大量的人靠写高级的光照毕业,可是很难在效率和效果上达到平衡,笔者认为作为一个商业游戏软件的团队,如果花那么多时间用在自我的类似全屏泛光算法改进上是件很费人力的事,最好的办法是游戏公司专门产生这样的部门,就叫做算法组,目标相当明确。然后就让游戏主程找这个部门的人协商,我有某个算法需要制作,帮开发下。然后主程把工作还是放到游戏上来,游戏还是由数据算法加上用户操作来组成。当然不可能都如你所愿的,这就成了主程的第四点要求,会算法,就是会图形算法,熟悉各种数据结构(好像变成了程序员的要求了)。呵呵,起码动态模糊,hdr啥的能写吧。

    还是再写下第5点要求吧,就是和团队相处的能力,挑选自己团队成员的能力。因为主程一般会给自己组里招程序员,于是识别人才,并且与之相处的能力就显的至关重要了。

36

主题

512

帖子

512

积分

高级会员

Rank: 4

积分
512
发表于 2010-3-12 23:10:00 | 显示全部楼层

Re:游戏主程的5点责任

学习楼主客户端的经验了~~~

6

主题

161

帖子

167

积分

注册会员

Rank: 2

积分
167
发表于 2010-3-13 14:35:00 | 显示全部楼层

Re:游戏主程的5点责任

主程的责任:
1. 沟通、管理、协调的能力
2. 项目和开发经验
3. 技术能力

0

主题

12

帖子

12

积分

新手上路

Rank: 1

积分
12
发表于 2010-9-16 13:18:00 | 显示全部楼层

Re:游戏主程的5点责任

学习了 呵呵 很有用

0

主题

5

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2010-12-21 06:53:00 | 显示全部楼层

Re:游戏主程的5点责任

有道理,学习了。

0

主题

1

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2011-1-28 12:38:00 | 显示全部楼层

Re:游戏主程的5点责任

赞同第一点,项目结束,理应总结,提炼,反思不足,学习和巩固优势,深思更有效的解决和优化方式。
团队管理与有效沟通。是另一个方面。
目前来看,对于MMORPG 的架构和引擎方面,现在的MMO越来越复杂,应也有新的架构方案和引擎技术与应用会得到迅速普及和使用。

3

主题

16

帖子

20

积分

注册会员

Rank: 2

积分
20
发表于 2011-6-21 12:26:00 | 显示全部楼层

Re:游戏主程的5点责任

个人觉得,主程一个最重要的责任就是对项目的责任,任何一款游戏从最初需求产生的时候,都需要主程序来决定一件重要的事情,那就是怎么做,怎么做说起来简单,但很多人还是没有把这件事情做得很好,往往我们需要对项目目标做一定程度的需求分析,才能决定我们的服务器使用什么样的架构,决定服务器端对象是用什么样的管理方式,决定多线程怎么开,决定UI使用什么样的配置或脚本形式,甚至决定网络底层是响应速度优先还是并发流量优先。可是我看到的很多项目,是我们手头有什么代码就决定怎么做,这样做当然不一定是错误的,但是主程序始终要清楚这样做离目标有多远,你怎么样做好目标与代价的平衡,这些都是一个主程序需要对项目目标,对项目风险,对项目开发节奏的把握的责任所在。除此之外的责任就是对代码的责任。
搂主所说那些个人认为可能应该算是对主程序的能力要求吧,我再补充几点,作为主程序,一定要有清晰的思路,知道什么组件怎么定位,接口长什么样子;再一个就是决策能力,完成一项功能或者性能的需求可以有很多种方法,至于选择什么方法,什么方法是最适合的,这就需要决策的能力;另外就是就是预见与解决问题的能力,也就是问题出现以前能不能有充分的准备,问题出现以后能不能尽快地解决掉,这些也只是简单的补充。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-2-24 04:25

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表