一个像素占了几个字节
1字节 = 8 bit
astc 像素块进行计算
1 block = 16 字节
4x4 :高4像素 宽4像素 = 16像素点
一个像素占了几个字节
1字节 = 8 bit
astc 像素块进行计算
1 block = 16 字节
4x4 :高4像素 宽4像素 = 16像素点
注意这里图片如果是空的 检查一下NormalMordel这个路径多了个R
Random.Range(int:min,int:max) 返回一个随机整数,在min(包含)和max(排除)之间 。 如果max等于min,将返回min。返回值永远不会是max,除非min等于max 。所以想随机出1,2,3,4应写为(1,5)
填充率:参考像素的绘制而不是物理上能不能看的见
RectMask2D
不占用drawcall,利用当前的的区域做一个裁剪处理。
进行裁剪:
告诉子类传一个区域,告诉它那些点不用绘制,哪些点需要绘制。
rectMask2D的子物体 是没有办法和其他rectmask2D子物体进行合批的
mask上的imag是可以进行合批的
mask下的子物体 是可以正常合批的
mask之间满足合批条件也是可以合批
问题,数据都放在mapMaker下?
例如monsterPath列表在Map'M'a'k
Initialize() 初始化
Execute() 每帧执行
Cleanup() 每帧执行
jpg:有损压缩不透明
png:无损压缩不透明
压缩格式转成纹理格式
原因:jpg和png无法被unity解压的
rgba 大 最接近原图
rgba32 高清 原图
mask产生两个drawcall 怎么来的
第一个:最开始设置模板缓存的过程而产生的
第二个:最后还原模板缓存而产生的
mask类里面 GetModifiedMaterial方法 模板的材质处理类
自动添加特殊的材质处理类导致无法合批
re
合批规则
1.遍历ui
2.根据深度值,材质id,图片id,rendersort依次进行一个深度处理
3.list中所有深度值为-1的都要剔除掉
4.相邻的元素是否能进行合批
首先根据材质排序
判断图片id排序
面板顺序排序
depth(深度)优先级最高
不渲染的深度值为-1
深度越小越先渲染
当前得ui元素会判断底下得ui元素是否能够合批
如果不能合批得话,那么我当前得ui元素得深度值是底下ui元素深度值+1
合批
把能够合并mesh得这部分合并到一起
判断合批 :
1.图片是否一样的
2.材质是否一样的
在推导
直接LookAt目标位置的x,y坐标和塔的z坐标就行,保证LookAt在塔的同一平面上就不会旋转了
从这里开始有点迷惑,必要的话返回重新听
select 可以做投影操作,或M(x)
操作,完成一个从选出的对象到另一个对象的映射