游戏开发实践
相关角色:
程序 -- 客户端开发、服务器开发
策划 -- 关卡策划、系统策划
美术 -- 场景、模型、动作、特效、UI
音效
测试
运营 -- PCU(Peak Cocurrent Users,最高同时在线玩家人数)、ACU(Average Cocurrent Users,平均同时在线玩家人数)、
DAU(Daily Active Users,日活跃用户人数)、WAU(Weekly Active Users,周活跃用户人数)、MAU(Monthly Active Users,月活跃用户人数)
DNU(Daily New Users,日新增用户人数)
运维
安全 -- 反外挂
客户端开发工作:
1. 高效自动化版本构建系统
2. 自动化冒烟测试
3. 崩溃、错误、异常、ANR收集系统
4. 工具链完善(编辑器扩展、调试插件等)
5. 热更新、微端
二进制patch开源库(对比2个二进制文件生成差异文件):HDiffPatch、BsDiff
6. 登录流程跟踪系统:登录漏斗
启动游戏(806422)100% --》启动更新(806422)100% --》App更新(806363)99.99% --》App下载完成(806363)99.99% --》资源更新(806363)99.99% --》资源更新完成(806363)99.99%
--》拉起账号登录平台(806358)99.99% --》登录鉴权(806358)99.99% --》成功登录(680918)84.44% --》进入大厅(272344)33.77%
注:最后一个阶段的成功和失败都上报,前面的阶段只上报失败,就可以得到完整的登录漏斗
7. 性能数据收集系统
8. 端游、手游、主机等多平台
9. PC模拟器适配
(1)fps游戏支持响应屏幕外负坐标输入 注:因为在PC上通过鼠标来控制转向,鼠标会拖动到屏幕之外的区域
(2)关闭视角转向加速 注:PC上的鼠标移动是线性的,所以针对手机用户做的手指移动视角加速需要关闭或者优化
(3)模拟器用户和手机用户要隔离,保证公平性
(4)定制默认灵敏度 注:手机和PC的操作习惯不一样,所以默认的灵敏度设置也要调整
(5)隐藏某些手指操作的UI 注:PC模拟器不需要,显示出来反而挡视线。可以将这些按钮的Alpha设置为0.01(不能完全设置0)
(6)针对PC模拟器进行新手教学优化
(7)安全SDK要能识别模拟器,有模拟器白名单机制
(8)支持iOS账号登录
(9)PC模拟器透传画质帧率参数给游戏,针对PC模拟器的游戏版本单独设置这些参数,以提升品质
10. 国内、海外多地区(文本、图片、音频国际化方案)
11. 局外系统(Avatar展示、社交粘性)+局内模式玩法
12. 游戏玩法:UI(MVC、UI优化、调整、分辨率适配 ①1280x720 ②1920x1080) + GamePlay + Render
13. 脚本化:局外系统、局内UI和上层GamePlay
14. 表现:场景画面、场景互动、天气变化、UI风格、角色操控、射击手感、动作、物理、特效、空间化音效
15. 性能优化:UI + GamePlay + Render 帧率、内存、发热、网络流量、弱网络
16. 根据硬件能力进行多档画质机型适配
CPU:1核 2核 4核 8核 大小核 降频问题
GPU:Adreno、mali、PowerVR(联发科部分android机,苹果手机)
Soc:高通骁龙、联发科Helio、华为海思麒麟
RAM:1G 2G 4G 8G ...
17. 最低OpenGL ES api支持2.0 3.1
187. 最低OS版本支持 Android iOS
Android分发信息中心(Android系统版本、屏幕尺寸和密度、OpenGL ES版本)
腾讯移动分析(设备活跃指数、设备品牌指数、操作系统分布、设备分辨率、联网方式)
百度统计流量研究院(移动设备市场份额:品牌 机型 系统、联网方式、分辨率)