maximize your production effort (chinese)
Post on 03-Jul-2015
282 Views
Preview:
DESCRIPTION
TRANSCRIPT
最大限度地提高您的制作能力
能够实现高效内容创作的工具和管道
针对工作室之间的资源开发
“扩充您的生产管道!”
简介
• 我是谁?
• 什么是Slant Six Games工作室?
• 您是谁?
• Slant Six Games工作室技术总监
• 14年视频游戏产业经验
• Slant Six Games工作室(05年至今):• 技术指导:BigBrain游戏引擎
• AAA级质量的跨平台引擎
• Xbox 360、PS3和Windows
• 全套内容创作工具
• 数据转换管道
• 自动构建、测试和发布环境
• 美国索尼计算机娱乐公司 (00年至05年):
• 开发:PS2低层次和图形引擎(《虹吸战士》)• 开发:PSP低层次和图形原型引擎(《虹吸战士》)
• Prior公司(96年至00年):
• 用于PS1、Dreamcast和Windows的图形引擎与工具
Paul Simon Martin
• 成立于2005年• 产品:
• 名称待定 - PS3/Xbox 360/Windows平台,2010年• 《海豹突击队:烽火战歌3》 - PSP平台,2010年• 《海豹突击队:对峙》 - PS3平台,2008年和“冷锋”拓展包,2009年• 《海豹突击队:战术打击》 - PSP平台,2007年• 《虹吸战士:黑镜》 - PSP平台,2006年 - 渲染引擎
• 奖项:• BC商业杂志 - 工作在不列颠哥伦比亚省的BC十佳公司 - 2009年• ELAN奖 - 最佳新游戏公司 - 2008年• 《海豹突击队:战术打击》• ELAN提名 - 年度最佳掌机游戏 - 2008年• BAFTA提名 - 最佳策略类游戏 - 2009年• E3最佳PSP多人游戏体验 - 2007年
• 技术• AAA级多平台(电脑、微软Xbox 360、PS3)自主研发的游戏引擎
• 自主研发的渲染和动画引擎、管道和工具套件• 自住研发的PSP引擎和工具套件
Slant Six Games工作室
• 自2007年开始外包美术内容
• 起初仅在本地...
• 随后转向中国
• 目前合作者有
• 2个以上的中国合作伙伴
• 1个加拿大合作伙伴
Slant Six Games工作室的外包服务
您是...
• 内容来源:• 任何未经优化且尚未通过数据转换的游戏资源文件
• 如*.ma、*.dds、*.tga、*.csv
• 游戏数据:• 随时可以被游戏加载的数据文件
• 通常针对平台进行优化
• 创作工具:• 用于创作资源内容的工具(通常基于个人电脑)• 例如Maya、Photoshop、CustomStudioTool
• 数据管道:• 工具和脚本套件,用于转换资源内容游戏代码
• 通常通过构建引擎驱动
术语表
• 幻灯片• 在线内容
(将在本次演讲中讨论)
• 脱机内容(隐藏或掩盖)
• 建议• 非常适合我们的实践方法
(要做的事:xxx)
• 痛苦的教训(要避免的事:xxx)
标识表
倒带...
• 第1部分:程序员
创作的演化史大约在公元1980年
• 第2部分:美术师
创作的演化史大约在公元1985年
• 第3部分:某人雇用了一个游戏设计师
创作的演化史大约在公元1994年
• 第3.5部分:美术师与设计师被打屁股 - 人气减弱
创作的演化史大约在公元1998年
• 第4部分:我们大家不能平静相处吗?
创作的演化史大约在公元2000年
• 工作室认可他们的美术师和设计师的价值
• 美术师和设计师:
• 构建游戏
• 程序员:
• 支持美术师和设计师
• 实现数据不能驱动的核心游戏操作
创作的演化史当今
• Paul M,,大约在2003年
• “工具”- 创作、基础结构、管道、打包
• 当今的游戏必须具备极高效率的执行时
=> 尽可能多地优化数据
• 制作团队创建的游戏
• 更快的工作流程 => 更多的内容
• 更快的工作流程 => 更多的循环 = 润色 = 质量
“你的工具水平决定了你的工作室水平”
循环!
扩充您的生产管道!
• 生产管道• “为您的游戏生产内容的过程”
• 狭窄紧缩不良的流量
• 宽扩膨胀不错的流量
• 注意事项:
• 团队内部过程/流程
• 团队外部过程/流程
• 创作工具/流程
扩充您的生产管道!
• 超大尺寸
• “提高容量”
• “做大”
• 以便:• 增加流量
扩充您的生产管道!
必须拥有流量!
• 延迟:在一个系统中对时间延后程度的度量
• 高延迟 = 低流量
• 确定最大循环时间
• 确定延迟
• 导出一个计划
• 重新评估
延迟 - 无声的杀手
让我们开始...
• 基础结构
• 内容创作
• 数据转换
• 游戏执行时
• 游戏/资源打包
• 游戏/资源共享
“生产管道”
• 坏事产生触发容量
典型场景
老把戏
1. 在关卡编辑器中创作/调整的触发容量
2. 用户点击“导出”按钮
3. 用户通过运行脚本来再次导出整个世界
• 纹理转换、能见度地图编制、导航网格生成
、...
4. 用户等待10多分钟
5. 用户启动游戏
6. 需要5分钟来加载
7. 用户从关卡开始处运行玩家角色开始 ->
试验区
8. 容量太大/太小?再试一次,回到步骤1
15分
钟
好多了
1. 在关卡编辑器中创作/调整的触发容量
2. 用户点击“保存”按钮
3. 内建基础结构探测到文件改动
• 单独为新触发容量触发快速资源转换
• 将变化通过信号通知(已运行的)游戏
• 游戏实时加载新的容量和相关的脚本
• 玩家角色(仍然)在测试位置
4. 容量太大/太小?回到步骤1。
5-1
5秒
钟
创作vs微调
• 创作:
• 新增/删除一些新的东西
• 延迟:1-30秒
• 微调:
• 移动或改变一些现存东西的属性
• 延迟:< 5秒
接下来会发生什么...
后循环,由用户提交变更...
1. 用户点击“提交”按钮
2. 存放在资源仓库里的新关卡数据
3. 构建/测试服务器(BTS)检测到变化并开始资源转
换
4. 利用新资源,BTS启动游戏自动测试
5. 一切顺利么?BTS向用户发送一个确认电子邮件
6. 问题?BTS向用户发送带有相关信息的电子邮件
用户参与到此结束/移动到新的任务
基础结构[IF]
基础结构
• 资源管理
• 自动建设
• 自动测试
• 自动度量报告
• 过程分析
基础结构 - 资源管理
• 版本控制
• Perforce
• Subversion/GIT/Mercurial
• Alienbrain
• Homegrown解决方案
• 万用标签(随后有更多相关内容)
• 检查并报告错误(越早越好!)
基础结构–
自动建设
基础结构–
自动测试
基础结构–
自动度量
基础结构 - 分析
内部+外部 仅限内部
共享边界
基础结构 - 共享工具
• 要分享哪些?为什么呢?• 是否记得前页幻灯片中的„共享边界‟虚线...
• 共享所得数据资源的工作流程
• 工具和数据版本• 开发者工作室的工具版本通常较远程工作室的更新周期
短一些
• 弹性执行时间或...
• 资源升级过程
基础结构 - 分析
内容创作[CA]
内容创作
内容创作
• 直观用户界面• 此外,以镜像存在的商业工具密钥绑定和快捷方式(
Maya、Photoshop、...)
• 一致的用户界面
• 接近零周期时间• 5秒钟规则
• 理想的情况下是在游戏/视图中
• 或者在工具视窗内
组织资源
• 通过万能标签(如iTunes)
• 要求执行工作
• 不佳的文件管理
• 通过目录(如Windose)
• 很难搬迁
• 找到一个平衡点• <= 200标记物放置在每个文件夹中
• 不允许用户定义的标签
资源追踪• 追踪软件/工具
• Hansoft
• Filemaker Pro
• Excel
• 一致的语言• 正常的地图变化
• 网格变化
• 细节变化
预算和度量
• 为所有资源建立„成本比分‟
• 为每种资源类型寻找一个“货币”
• 例如:• 文件大小(千字节)
• 尺寸(像素宽/像素高/像素深)
• 执行时间成本(GPU周期,甚至代码行数!)
• 允许用户评估场景的总成本
• 外包合作伙伴的文件“货币”
• 外包时资源追踪器的文件预算
预算和度量
数据转换[DC]
数据转换
• DOS批量文件很讨厌!
• 有限的功能
• 可怜的脚本语言
• 执行速度慢
• 没有数据依赖性检查 => 每个构建与前一个
耗时一样长
• 很难调试
数据转换
• 有很多更好的选择:
• Scons(我们都喜欢)
• MSBuild
• Ant/NAnt
• Jam
• Make
数据转换
• 检查错误:
• 尽可能多
• 及时报告
• 通常便于检查是否有资源在数据转换管道中丢失,但...
• 到这种地步时应尽量避免错误
• 最好是在创作时报告错误
• 清楚地报告错误!
游戏执行时[GR]
对引擎的考虑
• 中间件:
• 并非天生令人厌烦 但是不要仓促使用它
• 考虑:工具创作过程(识别任何延迟!)
• 考虑:与您的执行时之间的互用性
• 考虑:与您的工具和数据管道之间的整合性
• 考虑:是否支持?
• 考虑:代码来源:
Slant Six的中间件
碰撞、刚体物理学、布偶
音频资源管理、音频执行时
低级网络
Maya通过Fcollada进行输出
网格LoD
对引擎的考虑
• 实时更新:
• 调整变数
• 对象的位置/规模/旋转角度
• 对象的创建/删除
• 对象的刷新
• 实时可变自我检查/反映
• 创作工具反映的游戏可变状态
游戏和资源打包[AP]
游戏/资源打包
• 以哪种格式?
• MSI/ZIP/RAR
• PSN压缩包
• XBL压缩包
• 鉴定配置的复杂性
• 自动化!
游戏和资源共享[AS]
游戏/资源共享
• 共享服务器• Perforce以上的P4代理
• Visual SourceSafe + SourceOffsite
• 压缩包投递• FTP
• Aspera fasp™
• HDD Courier
• 信鸽?
资源共享 - P4的代理
资源共享 - 压缩包投递FTP/Aspera fasp™
资源共享 - 压缩包投递
• 问题:
• 长压缩包构建时间
• 通常在工作日较晚些时候才能开始
• 有些人需要工作到深夜!
• 解决方法:
• 将压缩包投递自动化!
总结
不要做的
• 让制作过程自身演化
• 总是优先考虑游戏功能改进而非工具和工作流程
• 忽略您的制作团队对工作流程的要求
• 低估了外包管理工作
要做的
• 确定您制作管道的延迟时间
• 尽可能多地应用自动化
• 举办定期的„资源创作优先性‟大会
• 聘请一队工具工程师!
• 创建一个外包计划
• 像团队一部分一样对待外包伙伴
• 与外包伙伴举办定期项目状况会议
• 最大限度地扩充您的生产管道!
与我交流...
问答
top related