Unity UGUI的Pivot轴心

本文探讨了在3D建模或动画中如何通过pivot点调整物体的中心位置,解释了按住shift键调整轴心的技巧,这对于精确操控顶点和保持物体平衡至关重要。了解和掌握pivot坐标对于优化模型锚点的设置有着不可忽视的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

pivot为轴心,可以通过调整轴心来调整物体的中心点
在这里插入图片描述
顶点的pivot坐标

在调整锚点的时候可以按住shift同时调整轴心
在这里插入图片描述

### Unity UGUI 自动适配屏幕分辨率和不同设备的最佳实践 #### 1. 使用 Canvas Scaler 组件优化 UI 布局 为了使UI能够适应不同的屏幕尺寸,在Canvas组件上添加`Canvas Scaler`是非常重要的。该组件提供了三种缩放模式来处理不同情况下的UI布局: - **Constant Pixel Size**: 此模式保持所有UI元素的像素大小不变,适用于不需要考虑分辨率差异的情况。 - **Scale With Screen Size**: 这种方式依据参考分辨率的比例调整UI对象的实际渲染尺寸,从而保证在各种屏幕上都能获得一致的效果[^1]。 ```csharp // 设置Canvas Scaler参数 canvasScaler.matchWidthOrHeight = 0; // 完全匹配宽度或高度 canvasScaler.referenceResolution = new Vector2(1920, 1080); // 设定参考分辨率为1920x1080 ``` #### 2. 调整锚点与矩形变换属性 通过合理设置UI控件的Anchor Points(锚点),可以确保它们相对于父级容器的位置关系不会因为窗口大小的变化而错乱。对于需要固定位置或者跟随边缘变动的对象来说尤其有用。同时利用RectTransform中的Pivot Point(轴心点)、Anchored Position(定位偏移量)以及Size Delta(尺寸增量)等特性进一步微调各个部件之间的间距和比例[^2]。 #### 3. 实现自定义脚本控制动态变化 当遇到更复杂的场景需求时,则可以通过编写C#脚本来实现更加灵活的功能逻辑。比如根据不同类型的终端加载特定资源文件;或是基于当前显示区域计算出最佳的文字字号、图片质量等级等参数并应用到对应的视觉元素之上[^4]。 ```csharp using UnityEngine; using UnityEngine.UI; public class ResolutionAdapter : MonoBehaviour { private void Start() { AdjustBackgroundImage(); } /// <summary> /// 根据屏幕纵横比调整背景图像填充策略 /// </summary> public void AdjustBackgroundImage(){ float aspectRatio = (float)Screen.width / Screen.height; Image backgroundImage = GetComponent<Image>(); if(aspectRatio >= 16f/9f){ // 对于宽屏采用裁剪拉伸的方式展示完整画面 backgroundImage.preserveAspect = false; backgroundImage.rectTransform.localScale = new Vector3(1, 1, 1); }else{ // 非标准比例则按照原始比例缩小至合适范围 backgroundImage.preserveAspect = true; backgroundImage.rectTransform.sizeDelta *= Mathf.Min(Screen.width/1920f , Screen.height/1080f ); } } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值