一、sprite尺寸问题
unity很容易遇到瓦片地图单元格尺寸与自己的sprite图像尺寸不符的问题,这时候需要注意瓦片地图的单元格尺寸单位不是像素,默认是1,而要让自己的sprite刚好填满一个单元格,需要设置sprite图片属性中的每单位像素数。假如图片像素是16 * 16,那么将每单位像素数设置为16,就意味着瓦片地图一个单元格大小刚好是16 * 16像素。如果不设置好这个属性那么sprite就可能在瓦片地图中非常大或者非常小。
二、2D场景UI在场景视图和游戏视图显示的尺寸和位置不一致问题
问题如图所示,我的UI在场景中正常视角是看不到的,因为它在我游戏画面的右上角而且非常大,但在游戏场景中它的位置和尺寸就正常了不少。
场景视图
游戏视图
问题原因,这个问题的原因在于canvas画布的渲染模式,如图,它默认是屏幕空间-覆盖模式,在这种模式下它的游戏视图不是按照设置的相机视角渲染的,而是以画布为参考,而场景视图显示的是二维下物体的绝对位置,这样就导致了二者的显示差异。
要让两个视图一致,保证UI正常显示,就需要设置Canvas的渲染模式为屏幕空间-摄像机,并将主摄像机设置为渲染摄像机,如图
这样两个视图就一致了,UI也能正常显示了。