Unity3d uGUI适配

Cavas:

  1、Render Model设置为:Screen Space- Camera。如果想在UI前面加特效我可以在创建一个摄像机(UIForward)深度大于这个UICamera就行了。

  2、Canvas Scaler:

    (1)UI Scale Mode :设置Scale With Screen Size 表示以宽度为标准缩放;

    (2)Reference Resolution设置设计分辨率,美术出图根据这个设置出;

    (3)Screen Match Mode 选择 Expand 这个就是UGUI自己自适应屏幕的选项了。

Main Camera :主摄像机,也就是透视摄像机,它的深度最小最先绘制。

Canvas下面挂UICamera 和 UIForward摄像机。

UICamera 不要在下面挂uGUI的UI控件(ps:ui会无法设置Anchor Presets),它的深度大于MainCamera。

UIForward 下面挂特效粒子要在UICamera的前面显示。

添加两个Layer,UI和FX:将UI控件和UICamera的Layer设置为UI;粒子特效和UIForward的Layer设置为FX。

UICamera:

  1、Clear Flags:设置为Don't Clear;

  2、Culling Mask: 设置为UI;

  3、Projection: 设置为Orthographic;(正交视图和透视图讲解:http://www.cnblogs.com/zhaoqingqing/archive/2013/09/05/3302484.html)

  4、Size:计算公式为:一种是:Size = Screen Height/2/Pixel To Units(http://www.cnblogs.com/zhaoqingqing/p/3556249.html)另一种:(http://www.xuanyusong.com/archives/3278)不知道孰对孰错;

  5、Clipping Planes: 设置为0;

UIForward:

  1、Clear Flags:设置为Depth only;

  2、Culling Mask: 设置为FX(自己添加的Layer);

  3、Projection: 设置为Prespective;

其他都是默认设置。

切图是将图片切成2的倍数,否则在ios中会显示错位。

posted @ 2015-04-13 16:14  YYRise  阅读(1705)  评论(0编辑  收藏  举报