Unity项目开发常见问题

最近看到有朋友问一个unity游戏开发团队,需要掌握哪些知识之类的问题。事实上Unity引擎是一个很灵活的引擎,根据团队开发游戏类型的不同,对人员的要求也有差异,所以不能一概而论。但是,一些在Unity项目开发过程中常常会遇到的问题还是可以总结一下的。

下面就简单聊聊实际工作中,一个项目组在前期规划时可能会遇到的问题吧。

这里指的不是策划的需求或者游戏玩法的计划,而是作为一个Unity项目我们需要在一开始明确并制定好的规范和标准。作为一个Unity项目或软件项目,这部分是很重要的,因为项目早期的规划随着项目的开发时间越久,就越难以修改。

 

1.对支持的最低机型不明确

作为一个Unity项目,我们首先要明确我们所需要支持的最低设备标准。并且项目组要有这样的设备,以供开发和QA团队使用。

否则,对项目的优化将无从谈起。

 

2.资源标准不明确

开发过Unity项目的同学可能都有过类似的经历,即开发过程中的资源标准不明确。这常常也是早期在项目规划时没有重视资源标准导致的。

所以在项目的早期阶段,最好能够明确资源标准比如模型的vertex数量、纹理资源的尺寸格式等等。

也要对每帧开销中,脚本和渲染所花费的时间有一个目标和预期。

 

3.没有合理的Asset流水线

这里指的是资源应该按照一定的流程和标准从美术那里导入到Unity项目中。

很多项目最终出现性能问题,都是由于没有一个合理的Asset流水线。从而导致项目内的资源标准无法管理,很多冗余或不符合目标设备水平的资源构建进了最终的安装包里。

所以,作为项目组,大家一定要指定一套自动化的Asset流水线。为Asset的规格和标准制定明确的规范,在自动化脚本中进行设置。

例如texture是否开启read/write?texture的压缩格式?尺寸?非人形的model在导入时是否关闭了rigs?动画模型是否开启了Optimize Game Object选项?等等。

 

4.没有合理的构建和QA流程

也有很多项目的构建并非一番风顺,构建的版本也难以管理。策划或者QA常常是找负责某个功能的开发兵荒马乱的打一个包出来。

所以项目组可以思考一下下面的几个问题:

是否有专门的打包机?

一个新的功能是如何发布到最终的发布版本的?

是否有自动化的可持续集成设施(CI)?

QA要如何反馈Bug,Bug如何有效的管理?

 

5.正式项目直接在Demo原型上进行开发

这个也是一个常见的情况,有些项目组早期会有少数几个人开发一些玩法演示Demo,Demo被认可之后开始开发正式的项目。

此时会有一个问题,即在Demo的基础上直接开发正式项目。由于很多Demo只是为了演示玩法,所以代码中有很多为了尽快实现需求的特定Hack。

如果正式项目以此为基础,到后期维护会比较麻烦。

 

除了上面所提到的问题之外,还有一些别的需要重视的内容,例如制定统一的编码规范、确定采用的光照模式(RealTime?Mixed?Baked?) 等等。

更多unity2018的功能介绍请到paws3d学习中心查找。链接https://www.paws3d.com/learn/,也可以加入unity学习讨论群935714213

近期更有资深开发人士直播分享unity开发经验,详情请进入官网或加入QQ群了解

 

 

猜你喜欢

转载自blog.csdn.net/qq_38452106/article/details/86541725