位置: 编程技术 - 正文

Unity项目中UI同学需知的程序相关要点(unity ulua)

编辑:rootadmin

推荐整理分享Unity项目中UI同学需知的程序相关要点(unity ulua),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity i,unity中ngui,unity i,unity中ui界面如何交互,unity里的ui,unity uishader,unity uishader,unity uishader,内容如对您有帮助,希望把文章链接给更多的朋友!

原文地址: Tag加上英文字符串

这样了之后,多张图被打包在一张图里面。

多张UI图通过SpritePacker的打包结果

由于多张图片打包在了一起,根据上面提过的合并drawcall的原因,会大幅减少这些图片带来的GPU消耗。但从上图也可以看出,打包之后,会产生多余的透明区域,所以打包可能带来的坏处就是增大了外存、内存。所以,关键是选择哪些图片进行打包。来规避透明区域的出现。选择规则如下:

不用的图不打包。因为打包的图,就算从不使用,也还是会进入到最终的ipa或者apk里;小的图尽可能打包大图(比如大于x,常见的有UI底图)不打包。因为大图会很有可能产生透明区域;降低需要打包中的分辨率最大的图。不打包的单张UI图片分辨率必须是偶数、很有可能需要是2的N次幂

本方法能为GPU、外存、内存带来好处

按照上面的多张UI图片可以打包在一起做了之后,不打包的图应该是少量的。但由于这些图是独立存在于内存,所以有更严&#;的要求:

单张UI图片分辨率必须是偶数。单张UI图片当有以下任一特点时,分辨率必须是2的N次幂需压缩的单张UI图片。需tiled的单张UI图片。tiled即图片平铺,常用于四方连续UI图。需mipmap的单张UI图片。即多层图片。一般情况下,UI的图片都不需mipmap,所以不用考虑这个。

@程序同学:现在大部分移动设备GPU是支持非2的N次方的。即NPOTSupport.Full或者Restricted的。Full的GPU对任意分辨率的纹理都能直接访问;Restricted的GPU,一般情况下对任意分辨率的纹理都能访问,但对于mipmap、tiled的纹理会把它pad成POT。所以,mipmap、或tiled的非打包单张纹理需强制POT。笔者身边的红米、三星、华为等手机,都支持NPOTSupport.Full,只发现小米3支持NPOTSupport.Restricted,小米3W支持NPOTSupport.Full。

@程序同学:ETC1(4bit/pixel)成功压缩的要求是POT且不带透明通道,否则将以bit/pixel的方式压缩保存;PVRTC成功压缩的要求是POT且方形,否则将以true color(bit/pixel)不压缩保存。常用的方案是,把UI图片打包到一张大图,且大图同时满足ETC1和PVRTC的要求,即POT、且透明通道拆分到大图的下半部、且方形。这需要有特殊的shader对这张大图进行采样:RGB取原本uv、A取uv向下偏移0.5。下半部的Alpha部分可以把Alpha&#;除以3平均分部到RGB通道,采样时把RGB相加作为Alpha,这样有利于ETC1压缩的效果。因大图的制作需要上半部是UI图片的RGB部分、下半部是UI图片的Alpha部分。所以需要自研或获取适合的atlas算法对UI图片进行排版。此时上面提到的Unity自带的Sprite Packer方法将不再适用。排版后的大图的可容忍浪费分辨率是原图的bit/4bit=4倍,或bit/4bit=8倍。

打包的UI图片的分辨率可以是任意的

但依然推荐输出偶数分辨率,避免未来带来不可知的麻烦。

UI最好能用九宫&#;&#;局部装饰实现

本方法能为GPU、外存、内存带来好处

Unity UGUI支持直接使用Sprite Editor直接进行九宫&#;制作

九宫&#;已经是非常常用的UI制作方法。九宫&#;UI几乎是百利无一害,所以希望UI同学能用九宫&#;的尽量用九宫&#;。使用九宫&#;有以下几个&#;得注意的技巧:

九宫&#;UI图片可以做得很小只给正方形的图,而并非上面一个长条形的图如果UI图片内部是低频变化(人话:比较平滑的纹理),依然可以使用九宫&#;如果UI图片内部是高频变化(人话:比较细的复杂纹理),一般情况下就不能使用九宫&#;了但可以把这些高频变化的纹理设计成只在边缘出现,让九宫&#;十字架内依然是低频变化,那这种UI图依然可以九宫&#;切九宫&#;时,边缘部分应尽量细、内部十字架部分应该尽量饱满。这样可以确保这个UI能够使用于非常小的场合而不穿帮字体选择方案

本方法能为外存、内存带来好处,可能为GPU带来好处

在选择游戏字体的时候,除了确保美观程度之外,还需考虑:

字体种类:应当保持在2类以内:用于标题的中文偏设计的字体、用于正文的中文偏正式的字体。如需,可额外加入英文偏设计的字体;字体编码类型:如果是中文字体,需考虑是否GB编码甚至是GBK编码。避免字体出现有些常用中文字没有的情况;在选择字体时,应留意在手机上的表现。比如一些字体比较细,在手机上看不清,到后面需要都加粗加描边,带来没必要的消耗,也带来了之后额外的繁琐的字体相关工作。由于选择了细字体,导致在手机上需要都加粗加描边,带来没必要的消耗(比如overdraw)制作流程UI同学和程序同学一起维护Unity UI资源文件夹

当前的工作流程是美术同学输出了UI图片后,传到FTP,通知程序同学具体路径,程序同学从FTP拷贝资源到UnityUI资源文件夹,为了版本一致,程序同学可能需要对它进行重命名,才用上了一张新资源。

Unity项目中UI同学需知的程序相关要点(unity ulua)

Unity UI资源文件夹里存放着真正采用到游戏的文件夹。这个文件夹事实上已经存在了,但只有程序同学在维护。现在需要UI美术同学、程序同学一起来维护它。这样有以下好处:

Unity的文件夹里,可以直接存放任意&#;式的图片甚至是psd。Unity在构建时才将这些图片转为需要用的&#;式可以直接在Unity看到图片在手机里内存、外存的真正占用方便查找真正在用的UI资源由于这个文件夹的资源是正式且确保资源不重复,所以方便美术同学间协作,防止信息不对称制作了重复资源当有UI小幅修改时,美术直接修改即可。而不是走一个美术修改、传给程序、程序替换的臃肿流程给资源重用落地提供基础

事实上,我们的特效、场景、模型都已经是这样做了,一起维护一个真正采用到游戏的文件夹

资源组件重用

老生常谈、不得不谈。资源重用可以节省策划同学工作量、美术同学工作量、程序同学工作量,节省外存、内存,也节省用户体验学习成本,。如果减法百利无一害,何必狂做加法吃力不讨好。

Flash项目可重用贴图的资源库Unity项目可重用贴图的资源库

一个可以帮助资源重用的思考流程大致是这样的:

UI美术同学如果在接到新UI需求;先想UI的某个组件能不能用资源库里已有UI资源组件来完成;如果能,则重用,仅仅在Photoshop里制作示意图,不输出该UI组件资源(此时,如果可以形成工具和规则,帮助UI美术同学将psd导出成prefab,将有效提高UI合入效率。《独立防线》项目组正在往这个方向尝试);如果不能,才设计新UI组件资源;同时,新资源也遵循可重用规则;新资源归档回资源库;多次重复1-5步后,资源库会越来越容易满足未来的新UI的需求。适配设备分辨率的UI制作思路接近:9的iPhone5(x)的关卡界面接近1:1的iPad Retina(x)的关卡界面

最近新出的手游为了更好的体验,都采取了填满设备屏幕的分辨率适配的UI方案。所以要求策划同学、UI同学在设计时,就要考虑分辨率适配问题。而并不能仅仅瞄准一款热门设备比如iPhone5进行设计。

Unity UGUI有很好的UI适配方案。概括描述如下:

矩形的原点都在左下角。3个重要的矩形:实在存在的父矩形、用于辅助的anchor矩形、实在存在的子矩形(当前矩形)。父矩形内部包含了anchor矩形和子矩形。

下列图中,外框表示父矩形、“四叶花瓣尖”组成anchor矩形、蓝点表示子矩形。

图:anchor矩形四角跟父矩形四角一一对应。即归一化距离(即距离占父矩形宽或高的比例)固定。对应的两个角之间就好像用橡皮筋绑起来一样。比如图中左上花瓣跟左上角距离总是%宽、%高。注意到,图中anchor矩形四角聚在一起,这样父矩形大小变化时,anchor矩形大小不会变化。图:anchor矩形四角跟父矩形四角一一对应。对应的两个角之间的归一化距离(即距离占父矩形宽或高的比例)固定。对应的两个角之间就好像用橡皮筋绑起来一样。比如图中左上花瓣跟左上角距离总是%宽、%高。注意到,图中anchor矩形四角各自分开,这样父矩形大小变化时,anchor矩形大小也会变化。图:子矩形四角跟anchor矩形四角一一对应。对应的两个角之间的距离固定。对应的两个角之间就好像用铁棒锁起来一样。比如图中左上蓝点跟左上花瓣的距离总是像素宽、像素高。注意到,图中anchor矩形四角聚在一起,这样父矩形大小变化时,由于anchor矩形大小不会变化,所以子矩形大小不会变化。图:子矩形四角跟anchor矩形四角一一对应。对应的两个角之间的距离固定。对应的两个角之间就好像用铁棒锁起来一样。比如图中左上蓝点跟左上花瓣的距离总是像素宽、像素高。注意到,图中anchor矩形四角各自分开,这样父矩形大小变化时,由于anchor矩形大小也会变化,所以子矩形大小也会变化。

总之,anchor矩形四角跟父矩形四角一一对应,对应的两个角之间的归一化距离(即距离占父矩形宽或高的比例)固定;子矩形四角跟anchor矩形四角一一对应。对应的两个角之间的距离固定。

通过这样的关系,就可以实现各种不同的适配方案。比如以下这些。

当四花瓣聚在一起时,父矩形改变大小,子矩形大小不会改变。位置会锁定在归一化距离。

横向纵向皆不拉伸

当四花瓣&#;子横向分开时,父矩形改变大小,子矩形横向大小会相应改变。

横向拉伸、纵向不拉伸

当四花瓣&#;子横向纵向皆分开时,父矩形改变大小,子矩形横向纵向大小皆会相应改变。

【VR】Leap Motion 官网文档 HandController(手部控制器) 前言:本系列译文是为迎合UnityVR的热潮与大家的学习需要,推出的针对Unity方向的LeapMotion官方文档中英对照翻译。本篇第五篇《HandController(手部控制

[置顶] (二十九)unity4.6学习Ugui中文文档-------运行时创建Scroll-lists 孙广东.5.首先要滚动和list形式存储内容。使用ScrollRect组件。就可以滚动了,但是有时候我们不希望,item超过区域还显示:就要使用Mask组件,

unity克隆抛物线型金币的方法 1、准备好我们要克隆的对象:金币publicGameObjectcoin;2、计算出抛物线的函数并按照函数算出克隆的位置:///summary///克隆抛物线型金币的方法////summary///par

标签: unity ulua

本文链接地址:https://www.jiuchutong.com/biancheng/377242.html 转载请保留说明!

上一篇:unity5.0安卓开发环境配置(unity安卓游戏开发)

下一篇:【VR】Leap Motion 官网文档 HandController(手部控制器)(vrbrations)

  • 所得税费用是什么科目
  • 药酒消费税计税依据
  • 一个人可以做多少家公司法人
  • 幼儿园财务科目设置
  • 小规模纳税人专票免税吗?
  • 软件产品增值税超税负即征即退
  • 一般纳税人如何注销
  • 农产品计算抵扣的税务政策
  • 固定资产账面金额什么意思
  • 企业的日常经营活动主要包括哪三个经营过程
  • 金融资产的划分标准以及相关的处理怎么做
  • 税法关于开具发票的规定
  • 房产原值怎么计算房产面积
  • 彩票扣税比例
  • 确认社保局工伤赔款会计分录
  • 金税盘减免税额
  • 企业支付的产品广告费应计入什么账户借方
  • 增值税的附加
  • 租入的固定资产属于资产吗
  • 价格调节基金税率和计税依据
  • 广告费和业务宣传费扣除标准2023
  • 主营业务收入怎么结转
  • 制造费用年末需要结转吗
  • 暂时关闭朋友圈
  • 基金收益率
  • 代扣可以退款吗
  • 收到上级工会下拨的工会经费
  • 事业单位政府预算
  • windows10自带桌面时钟
  • 进销存功能
  • php 抓取别的网站的内容
  • 学php的书
  • php 文件操作
  • hprj是什么文件
  • macos big sur操作
  • 出租固定资产取得的净收益计入什么科目
  • 一个非常好看的中秋礼物怎么做
  • 最保值的ipad
  • 若依管理系统前端代码分析
  • 企业所得税如何计算应纳税所得额
  • 应交增值税明细科目怎么看
  • 【角色扮演】
  • 纯HTML+CSS小兔鲜儿网站首页(静态网页)
  • typescript教程推荐
  • python如何设置窗口背景色
  • 以前多计提的工资怎么办
  • 退回以前年度的增值税账务处理
  • 公司多余的钱叫什么
  • php实现站内消息推送
  • 业务招待费进项税额转出会计分录
  • 工业企业库存商品的初始入账成本
  • 经营租赁方式租入再转租的建筑物
  • 本月未抵扣完的进项税是否转出
  • 应收账款少收会计分录
  • 出售固定资产已开票未收款账务处理
  • 往来账怎么记账
  • 公司买房代替房贷合法吗
  • 过路费油费计入什么费用
  • 先开票后发货是什么意思
  • 企业注销未分配是从注册开始吗
  • 会计所说的内账外账
  • sql server 2000安装好打开不显示名称和服务原因
  • mysql子查询嵌套查询
  • 网站的运维
  • macos怎么使用
  • Vista Virtual PC软件安装XP系统
  • assoc.exe
  • 360tray占用大量内存
  • windows7系统下给WORD2010设置打开密码的方法
  • python爬虫工作内容
  • node.js 生成pdf
  • chrome excel
  • node.js权威指南
  • 内蒙古国家税务
  • 陕西税务厅
  • 安康国税局电话号码
  • 什么叫税务协查
  • 浙江职称评审网站官网
  • 税务发票机器怎么操作
  • 广东发票查验平台下载
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设