当代游戏的特点以及技术概述

整体行业近况

l         运营成本增加,盈利模式趋同。

(由于国内游戏开发环境已经逐步完善,游戏与游戏之间,游戏公司与游戏公司之间的竞争加剧,游戏的商业化运营更加正式,做为游戏的重要的宣传手段,运营的投入也大幅增加,于是便分化出了游戏运营商和开发商。

根据Ireasch2007年报告来说,中国67%游戏已经是PayToPlay转化为FreeToPlay,典型的有盛大的招牌《传奇》,都转为免费游戏+收费道具。)

l         产品老化严重,用户忠诚度很低。

(用户:蝗虫族。2/3以上玩家兼玩2种或2种以上的不同类型游戏。平均蜜月期不足1年半,国外玩家平均蜜月期为33月。

新的网游很多,但是能够冲破 WOW,传奇,西游 三大霸主的地位难度还是很大。很多游戏是热门抄作期一过,就完了。)

l         游戏产品类型五分天下,玩家群分化严重。

(回合制MMORPG:大话,梦幻,问道,水浒Q

2D ARPG:传奇,征途

3D ARPG:魔兽。热血江湖,RF,天堂2,天龙八部

休闲游戏:跑跑卡丁车,劲舞团,街头篮球

棋牌类:QQ游戏,联众

l         跨行业合作性强。

(可口可乐,康师傅,百事可乐均进入游戏合作推广,游戏作为一种宣传媒体,这种宣传模式越来越被认可)

 

l         整体来说:中国网络游戏行业,面临机会和挑战并存。

(一部分厂商凭借稳固高质量的游戏产品和务实的运营开始崭露头角,一部分则因为产品运营原因,关门大吉。网游市场多极化发展,用户拥有了广泛的选择,对产品质量和用户氛围也越加注重,游戏公司必须和市场一起成熟起来,才能适应今后的发展。)

 

 

l         游戏程序发展方向

1.         代码重用性。出现引擎。

2.         OO思想和效率的兼顾。C++语言的流行。

3.         游戏可扩展性,灵活性。脚本语言的流行。

4.         硬件的发展。3D将成为主流,虚拟现实VRWeb3D也大肆发展。

5.         网络的发展。网络游戏的适用范围越来越大。分布式服务器的流行。(EVE

6.         AI,物理在游戏中占的比例越来越大。

 

1:引擎的作用。

将不同游戏的共同功能抽象出来,做为核心底层的封装的代码就是引擎。

最底层大致包括:计时器,内存管理,错误处理,输入设备处理,网络通讯,IO输入,基本的数据结构,取随机数大小值等基本数学方法函数,不同格式的文件数据类型读取。

稍高一层大致包括:音效管理,网络通讯管理,UI管理,对象管理,寻路,场景管理,渲染器管理,脚本管理,物理模拟库,AI状态机,数据库管理,图形管线,角色对象管理系统等。

若是3D游戏的话,在图形图象部分还要多出一些部分:Shader,粒子系统,渲染对象管理,2D精灵系统,地形,BSP树拣选,八叉树拣选,包围盒,摄象机,动态模糊,动态光照,碰撞检测,鼠标拣选,HDR等。

 

2C++语言的发展。

相对C来说,OO思想更符合现在大型项目的开发思路,在效率上C++较之JAVAC#等语言效率很高,可方便的嵌入汇编优化。

汇编: 快,超快又小巧。要是天才汇编程序员,比其他语言程序员做出的程序强大的多的多。可以学习起来极难,编写一个程序,需要极多的代码。完全没有任何移植性可言。我们不可能用它来做一个游戏,但是,局部可以汇编优化。MMX指令集。

VB      容易上手和学习,但是没有由于照抄BASIC,丝毫没有结构感,OO表现难度过大。即时编辑和良好的插件还是很不错。但是应用系统太大,运行时间过长,运行时还需要一个1.4M左右的运行库,另外,支持且仅支持Windows,他是完全基于WindowsAPI开发。

JAVA   强大。J2EE的企业级开发库支持的细节是非常强大的。但是做中小型项目又实在没有必要,J2SE的功能又凌杂的有些可怜。纯粹且完全的OO语言,使得非面向对象的思想完全活不下去。正因为JAVA的强大细节把握性,导致JAVA代码通常很冗长,没有做到轻便化。而且!最重要的是,不支持操作符重载,实在非常烦人。所谓的平台无关性也是一种说法而已,它本身就需要一个JVM运行环境,环境本身就是一个平台。JAVA的设计目的是安全性,可移植性,于是对内存地址访问被CUT了,所以在性能上容易有一些损失。总之一句话,它很象一个对C++的封装。

C#类似JAVA不重复多说。

 

3:脚本语言。

工作流程:脚本 -- 行处理器(词法分析,语法分析) -- 字节码流解释器

特点:容易学习,代码可维护性强。

Lua,Pyth,Ruby,Perl各有优势,但Lua以轻量化,与C结合紧密出众,获得亲睐。

Ruby   慢, Debug难度较大,没有成熟的作品(RM特殊),在日本流行度较高。

Lua     轻量化,与C结合紧密。但教程极少,接口设计不够巧妙,也没有对大型应用设计出良好的支持。但游戏开发已经足够了。WOW,大话梦幻等。

Python 老的脚本语言了。强大,有极高的阅读性,很好的扩展性,开发人员可以用C++等语言对Python本身进行扩展。当我们进行比较大型项目,将其拆分为大量单元,交由多数人进行开发时,阅读性,高效性,可维护性是脚本语言比较重视的部分,Python在这里做的很好,所以,Google,微软,Nokia都用Python.

 

43D成为主流。

3D的画面表现力比2D强,仿真性强,给人带来的代入感好,随着硬件的更新,3D是一种不可抗拒的趋势。

 

5:分布式服务器结构。

单服务器结构,开发效率快,逻辑简单,但是容量小,随着网络的发展,已经被抛弃。1500-2000

多服务器结构,可分为按地图划分服务器和按功能划分服务器。

                     按地图划分为服务器,大致会分为 世界服务器,地图服务器,网关服务器。当负责分配的世界服务器出现鼓掌,将使所有的地图服务器失效,因为数据是依照地图独立存储的,当某一地图服务器挂掉,将可能失去大量的数据。

                     按功能划分服务器是符合OO思想的一种设计,将一些密集型的功能分离开来,单独由一个服务器进行控制,这样的话,当一个服务器出现问题时,不会影响其他模块的运行,而且扩充性也比较优秀简单。

分布式服务器构架:支持远程对象调用,动态的分布节点吞吐,保证服务器受压平衡。但是在开发难度上较大。

 

6AI,物理模拟在国内网络游戏开发中并没有过多的使用该功能。带过。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值