Notifications
Article
Unity FPS示例项目介绍
Published 21 days ago
80
0
在Unite LA上,我们正式发布了FPS示例项目,这是一款第一人称多人射击游戏的演示项目。该项目旨在成为开发者的灵感源泉,你可以用它来学习Unity中的新功能。
FPS示例项目展示了使用Unity开发射击游戏机制的一种方法,我们将提供包含源代码和素材资源完整的项目下载。

如何获取

如果你要获取该项目,首先确保安装使用Unity最新beta版本,你可以从Unity Hub下载最新版Unity。
然后从Github库下载FPS示例项目,并在项目自述文档找到使用指南。下载地址
了解更多FPS示例项目,请访问:
https://unity.com/fps-sample

FPS示例项目介绍

FPS示例项目提供了所有素材内容,包括源代码,艺术资源和音效等内容,但这些内容都不是来自Asset Store资源商店的资源包。这样一来,你能按自己的需求提取,挑选和使用特定内容。
当然,你也可以使用整个项目作为自己开发游戏的框架或起点,而且由于所有资源在Unity Companion License 许可下发布,你甚至可以将其用于基于Unity的商业项目中。我们希望FPS示例能够帮助你开始制作属于自己的游戏。
FPS示例首个版本适用于PC,计划在未来支持Mac、PS4和Xbox One。
该项目运行于最新的Unity 2018.3 b6。开发团队的核心原则是使游戏运行于原版Unity上,也就是说,它不需要使用自定义版本。相同的,该项目也不需要任何Asset Store资源商店的插件资源包。

FPS示例项目开发目标

FPS示例项目由来自Unity研发部门核心内容团队的6位资深游戏开发者设计,使用着最前沿的新功能,我们计划持续更新该项目到Unity最新版本。
FPS示例项目将帮助我们更好的收集对新功能的反馈。我们会通过构建完整的工作项目来模拟开发者的实际工作条件,这将帮助我们从整体上改进新功能和完善Unity。
在我们查看和审核收到的每一个错误报告时,处理预发布版本也提供了从更全面的角度改进Unity的机会。
随着项目越来越大也会变得越复杂,保持可扩展性是维持高效工作流程的关键。为了解决这个问题,为团队的效率提供支持也是我们关注的另一个重点。于是我们解决了与制作内容相关的多个痛点,并且优化了性能和技术解决方案,以实现理想的游戏机制。
我们的另一目标是让新功能更快地进入正式制作阶段。例如:将在2019年离开预览阶段的高清晰渲染管线HDRP。我们也会重点关注细节部分,帮助Unity引擎研发团队时刻了解未来的开发情况。
通过模拟实际制作过程,FPS示例项目的开发团队成为了Unity测试团队的延伸,推动了质量和稳定性。通过这个项目,我们获得了大量关于优化和改进功能的案例。

使用HDRP制作风格化的效果

全新的HDRP是一个基于物理的现代渲染管线,它被用于《ADAM》和《死者之书》等令人惊叹的演示项目中。这个基于物理的渲染管线当然也可以用来制作风格化效果。
在FPS示例项目中,我们展示了如何实现该效果。例如:你可以了解如何实现次表面散射功能。在FPS示例项目主关卡的植物上,你可以了解我们如何模拟光线透过叶子等半透明表面的效果。
其他示例包括HDRP中贴花和新光照功能的使用案例,该部分包含能自定义直线几何体的矩形区域光,它可以发射光线。以及全新的线性光功能,允许光以直线形状发射。
FPS示例中的光照贴图是通过Unity的渐进式光照贴图功能实现的,这是一个基于路径跟踪的快速光照贴图制作系统,它能在Unity编辑器中以渐进式更新的方法提供烘焙后的光照贴图和光照探针。

为多人射击游戏编写高性能联机代码

编写高性能联机代码,并实现流畅公平的射击游戏是个艰巨的任务。开发者往往很难管理好世界状态,换句话说,也就是每个角色在游戏世界中的位置。
解决方案是在各位置之间进行插值,而不使用从服务器获取的实际位置。类似地,通过使用客户端预测技术,我们解决了移动缓慢的问题,这使玩家或角色可以在未经服务器允许的情况下移动。
你还将需要延迟补偿和授权功能的解决方案,同时以高效的压缩方式和服务器来托管游戏,并通过使用较少内存占用来节约成本。
在FPS示例项目中,你可以通过查看我们如何处理上述问题找到解决问题的灵感。我们使用的联机代码利用了Unity的新传输层,该功能不久前以预览版发布,它能提供解决这类问题的思路。

小结

我们将持续的在Unity最新版本中开发,更新和维护FPS示例项目。这也意味着该项目未来将使用更多新功能,例如:Visual Effect Graph。
后续,我们还将发布相应教程和系列开发文章,敬请期待。更多Unity新功能及资源介绍尽在Unity官方中文论坛(UnityChina.cn)!

Unity China
355
Comments