网站大量收购独家精品文档,联系QQ:2885784924

基于 Unity 中的 NGUI 插件,通用的 UI 如何设计.pdf

基于 Unity 中的 NGUI 插件,通用的 UI 如何设计.pdf

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于 Unity 中的 NGUI 插件,通用的 UI 如何设计 以我的项目经历来说,要保证通用性必须分清需求是框架需要还是项目需 要。举一个例 ,所有的项目都需要一个弹窗提示的接口,但是不同项目弹窗都 不一样,当时做的时候我没有想好怎么分离,那就放到项目类库里,保证框架不 受影响,以后再重构。 下面根据题主提的要点针对性说下方案(以NGUI框架为基础,UGUI还在 研究中): UI 和场景中物体的交互如何控制 目前遇到的场景中交互有几种: UI 类似血条的显示:通过摄像机转换坐标的方法转换为 坐标来同步血条位 置。 UI UI 对点击等操作的响应:属于控制管理器,不应该放在 框架中,但是 UI 框架需要提供 尺寸和实际尺寸的比例便于规划控制范围。 3D物体的展示:可以直接放在界面中也可以使用renderTexture,前者更方 便。 切换场景时对 UI 如何处理 虽然unity提供了Scene这个功能给我们使用,但是我个人的最终目标是将 UI 整个游戏运行在一个场景中,但这并不影响 框架。一个场景一个单例的管理 M2 M1 M2 M1 器( ),还有一个跨场景的管理器( ), 负责具体的创建和关闭, M2 负责对象池之类的功能。如果多场景,场景切换时 实例和界面就都销毁了, M2 不需要特别处理;如果单场景,创建和销毁都已经由 实例负责了。 UI / 如何分组 分类以方便管理 个人看来这一条本身提的比较模糊,因为可以理解为资源的管理也可以理解 为结构的管理,下面分别回答。 资源管理:小的项目可以使用公用图集(+Texture)的方式,大的项目UI + 资源太多,只靠公用图集肯定会造成内存的严重占用,所以建议是公用图集 功 能图集 (+Texture)。功能图集就是一个功能模块的公用图集,在功能操作完毕 时就可以释放掉了。这里涉及到的细节太多,就不展开了。 1 button label sprite 结构管理:我的思路是分为三类: 控件,就是 、 、 等等。 buttonGroup button 2 / / (像 就是 的组合,使用代码创建和控制) 弹窗 界面 列表 3 项,这三者都由控件组成。 共用布局,这一类是为了节省时间而分的,比方说 卡牌游戏中反复出现的卡牌布局其实就是共用布局,每个界面重复制作显然浪 UE 费,是否有这类关键在于 结构是否明确和复杂布局的复用程度。 如何统一管理 UI 的深度 Z UI 3D UI 3D 这条可以引申为 坐标(如果 中有 物体或者 本身就是 的)、 renderQueue、界面的调用顺序等全局属性的管理。这些内容都应该在界面制作 的时候就记录在界面信息上,在创建、聚失焦、关闭界面时记录在管理器中。/ UI

文档评论(0)

精品资源 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档