• UGUI组件之CanvasScaler 画布定位器 简单笔记


    UI组件之CanvasScaler 画布定位器

    1.Canvas Scaler 组件介绍
    2.Constant Pixel Size 模式
    3.Scale With Screen Size 模式
    4.Constant Physical Size 模式
    ========================================================
    1.Canvas Scaler 组件介绍
      在 Unity 项目开发过程中,尤其是手游项目,UI界面的开发工作量是很大的。
      对于 UI 界面有一个很关键的技术,叫做“屏幕自适应”,就是说我们的游戏 UI
      要能自动适配不同的屏幕比例和屏幕尺寸。
    ----------------------------------
    在 UGUI 中用于实现“屏幕自适应”需要用到两个组件:
      ①AnChors [锚点] ②Canvas Scaler[画布定位器]
        这两个组件配合使用,才能相对完美的实现 UI 屏幕自适应的开发需求。
    ----------------------------------
    Canvas Scaler 组件有三种定位模式:
      ①Constant Pixel Size
      ②Scale With Screen Size
      ③Constant Physical Size
    ========================================================
    2.Constant Pixel Size 模式
    ----------------------------------
    1.模式介绍
    该模式可以称之为“恒定(固定)像素大小模式”,UGUI 默认就是该模式。
    该模式下的 Scale Factor 参数会作用于 Canvas 游戏物体的 Scale 参数。
    在该模式下无论屏幕尺寸发生什么样的变化,UI 元素的大小都不会改变。
    ----------------------------------
    2.相关属性
    Scale Factor:比例因子,默认保持为 1 即可;
    Reference Pixels Per Unit:参考像素单位,默认保持为 100 即可。
    ----------------------------------
    3.Scale With Screen Size 模式
    ----------------------------------
    1.模式介绍
    该模式可以称之为“跟随屏幕尺寸缩放模式”,在手游项目开发中,使用该模式。
    该模式下 UI 元素的尺寸就不是固定的了,会跟随屏幕的尺寸比例进行相应的自动
    缩放。
    ----------------------------------
    2.相关属性
    Reference Resolution:参考分辨率,设置成项目开发时使用的分辨率。
    Screen Match Mode:屏幕匹配模式,推荐用第一种模式。
    |---Match Width Or Height [匹配宽度或者高度]
    |---Expand [扩大] ---Shrink [缩小]
    ----------------------------------
    Match:匹配,当屏幕匹配模式选择为 Match Width Or Height 时该属性有效。
    一个滑块控制条,0~1,代表宽和高。
    横屏游戏用 Height 匹配,竖屏游戏用 Width 匹配[以短方向进行匹配]。
    ----------------------------------
    4.Contant Physical Size 模式
    该模式可以称之为“恒定(固定)的物理尺寸”,在该模式下 UI 元素永远保持固定
    的物理尺寸,使用场合较少,所以不对该模式进行讲解。
    ----------------------------------
    简单总结:
    第一种和第三种,都是“固定模式”不适合手游项目的开发,手游由于屏幕分辨
    率不统一,必须要做 UI 自适应,所以选择 Scale With Screen Size 模式。
    目前只靠这个模式还无法完成自适应,还需要用到 AnChors 组件。

  • 相关阅读:
    2021年搭建Java环境最快办法
    teprunner测试平台Django引入pytest完整源码
    teprunner测试平台用例前置模块开发
    JMeter扩展Java请求实现WebRTC本地音视频推流压测脚本
    teprunner测试平台部署到Linux系统Docker
    学习版pytest内核测试平台开发万字长文入门篇
    JUC---02
    JUC——01
    【小白学PyTorch】11 MobileNet详解及PyTorch实现
    【小白学PyTorch】10 pytorch常见运算详解
  • 原文地址:https://www.cnblogs.com/madinglin/p/8476841.html
Copyright © 2020-2023  润新知