在进行新项目的开发或者接手、后期维护其他一些项目时,经常性的,我们会遇到以下情况:

1、使用新的插件替换已有的bug比较多或者不在维护的插件;

2、因策划需求或美术资源的变更,而不得不更换游戏中的游戏对象/组件;

往往这种时候,由于项目前期的考虑不周,或者项目进度紧急,采用的方案这时候就会暴漏很多问题,举个例子:

项目中使用EZGUI时,文字的显示使用的是SpriteText组件,需要的地方直接进行其Text属性的修改,这时候如果需要替换使用TextMesh,TextMesh的显示需要修改的是text属性(两者大小写不同)。全局搜索一下,就会发现整个项目中充斥了这种东西,如果这个时候要你替换。。。

因此,在项目中,最好不要直接调用Unity3d提供的API,最好进行一次自己的二次封装。

就拿上面的例子来说,简单的处理方案,就是我们可以对这两个组件进行一次函数扩展,都封装为SetText,这样,在调用的地方,都是统一的方法,更换时我们只需要更换定义的地方就可以了。

05-12 10:35