目录
图片相关
图片设置
红色代表重要参数
Textture Type 纹理类型
1.default 默认
Alpha Source中第三个用的很少,要么没有透明通道,要么直接使用输入纹理中的通道(第二个)
而Alpha IS Transparency勾选的话效果会比较好
2.Normal map 法线
需要先勾选Create from Grayscale才能看到后续两个选项。法线可以用来降低精模
3.Editor and Legacy GUI
编辑器或者GUI开发,没有特殊参数
4.Sprite(2D and UI)
5.Cursor 自定义光标
6.Cookie 光源剪影
7.Light Map 光照贴图
8.SIngle Channel
纹理形状设置
需要先改成Cube
复杂的展开留到unity进阶再说
纹理高级设置
纹理尺寸一般64×64,128×128这种2的幂次方。 可以设置它的处理方式
Read/Write Enabled:是否通过代码获取图片信息,如果不用就关掉。会占用性能。
generate Mip Maps 控制是否使用MipMAp,Streaming通过消耗一些性能来减少纹理所需的内存。
如果是2D游戏,那么可以不启用,3D项目则根据需求选择性的使用。
一般不需要让它淡化为灰色
纹理平铺拉伸
平台打包设置
一般米切尔算法就足够使用。Bilinear细节更多但消耗也更大
通道分离选项只有在对应格式时才会出现,比如ETC,相当节省内存。
图片编辑
Single编辑
包管理器里下载
轴心点决定了图片绕着哪个点旋转
点一下Generate生成网格Custom Physics Shape则与其类似,控制精细度然后生成网格
Multiple图集分割
在再次点击Slice后Method模式才会生效
一般用第一种自动就完全够用了,除非它歪得离谱才会手动去调整。直接鼠标框选
Polygon多边形编辑
在这里填边数,比如三角形等
注意点击apply后渲染区域也一同更改了,可以适当调整它的精度。但多边形编辑其实用的少
Sprite Renderer
其中切片九宫格模式非常重要,需要先把图片网格设置成Full Rect
修改SIze就可以用一张小图得到大图,节约资源
九宫格模式是把中央进行拉伸,平铺模式则是把中央进行平铺。都是只处理中央部分
Tiled平铺模式,一个是只要拉伸就均匀平铺,一个是到达临界值才平铺一次,否则只拉伸不平铺
而代码部分,也是会获取组件上的参数的。重要的是获取
如果是图集,就只能去加载图集整体。用LoadAll这个API,数组接收然后通过索引获取单张图
练习题
这个字典的键代表大图集,值代表小图。而小图也是一个字典,由名字和sprite组成
然后因为只能获取大图集整体,所有建立一个临时字典用来接收大图集下的所有小图
SpriteCreator精灵创造者
先用替代资源写逻辑和程序,等美术资源出了再把资源替换掉
在资源面板创建(Assets)
获取物体和物体身上的脚本是两码事
Sprite Mask 精灵遮罩
可以更改遮罩的形状
在渲染器里面可以更改遮罩设置
不显示 在遮罩内部显示 在遮罩外部显示
放大镜原理,一张大图在底下唉,小图在上面。平常只能看到小图。而放大镜的层级比这两都大,且镜片位置有一个遮罩,可以看到大图忽略小图。就达成了类似放大镜一样的效果 >= <
图片层级需要》=Back且《Front才能被遮罩影响
Sprite Group排序分组
子物体可以再嵌套Group
给图片成为该组件所在物体的子物体后,就只会根据SortGroup的层级来划分,图片本身的层级不再生效(不对其他Group下的图片生效,但仍然会影响同一Group下的其他子物体)。
适用于给场景中的多个sprite进行分好组,甚至可以把整个场景都分成上中下层
当SortingGroup/图片本身所在层/层级序号全都一样时,z轴才会起作用,优先级最低
Sprite Atlas 精灵图集
这种是使用图集,也就是图源本身就是一个图集。
而打图集是把一个张张的单图给打成一个图集,是制造图集的过程,可以减少DrawCall
一般选择让它ALways Enabled一直打包就行了
如果是UI图集请禁用打包旋转
一般用主图集即可。变体图集的作用只是在主图集的基础上放缩而已,用的很少
Texture中的内容之前已经讲过,可以复习一下 后面的平台相关设置也已经讲过
2D游戏的话,一般不需要用MipMaps,因为没有远近概念
打包哪些图。可以按+号添加也可以直接拖入。注意可以拖入一整个文件夹。会把文件夹中所有图片一起打包。按“Pack Preview” 进行打包
使用这三张同一图集的图片时 运行后发现Draw Call有效减少
所以平常用图片就直接用,等到都做完了再来进行一个打包
先加载Resoures中的图集,然后通过图集的GetSprite方法得到单张图
使用前需要先引入命名空间 using UnityEngine.U2D;
因为每次检测都发现上一张图和自己不在一个图集,所以变成了三次。
为了避免这种情况我们应该尽量让这种会穿插在一起的图片打包进一个图集
Sprite ShapeProfile精灵形状
需要导入包
在该包下可以导入示例场景或资源文件
以不封闭图形为例
如果是封闭图形,填充的图片就决定了中间的填充效果
使用精灵形状
把精灵形状拖入场景,就会看到这两个组件
Sprite Shape Renderer
Sprite Shape Controller
Adaptive UV:勾选后只有拉到一定长度才会变成两张图,可能会因不满阈值而扭曲
不勾选则拉长就立刻平铺,但可能出现因为平铺图片和长度不符,只显示一半的情况
所以两种情况,因根据具体的需求来选择因为平铺没显示完
注意Cormer的设置只针对某个点,不是全局设置 然后给精灵形状加碰撞器
如果不需要移动用Edge就够了。需要移动可以用第二种,因为复合碰撞器与刚体绑定
2D物理系统
2D刚体
当你这样让2D物体改变的时候,其实它是在绕z轴旋转
DYnamic 动态
一般设置材质就在碰撞器上面设置就好了,它的优先级最高。子物体不设置则会使用父物体的设置
选了自动质量就不能手动调质量了。 移动和旋转阻力不用多说
比如Gravity Scale为2则受到两倍重力,-1则反向重力,0则不受重力
从不休眠。移动时唤醒静止时休眠。一直休眠,被碰撞时唤醒。 三种模式性能消耗依次i降低
如果物体移动可以选择第二种,如果物体本身就是静止的,可以选择第三种。极端情况会用第一种
Kinematic 运动学
启用则可以和三种类型的刚体都发生碰撞,默认不启用,则只能和Dynamic类型的发生碰撞
Static
看上去有点类似碰撞器。区别是,碰撞器可以被任何刚体碰撞,而静态刚体则只能被Dynamic碰撞
如何选择
相同的地方就不再赘述,关注一下不同的地方。 (加扭矩就是让它旋转
碰撞器
在其他碰撞器当中勾选“Used By Composite”再使用复合碰撞器
1.圆形
如果要单独使用就不要勾选复合碰撞器
2.盒状
3.多边形
→直接编辑
4.边界
Edge一般用来做不规则地形的碰撞。 和多边形一样,直接点击编辑功能,而不是去手动加点
5.胶囊