Unity 获取组件宽高的方法

2024-01-08 06:36:27

在Unity中,我们要获取组件的宽高,具体方法要看组件的类型。

假如是2D UI组件,那么我们可以通过RectTransform的Rect属性获取,如获取Image?组件宽高:

Image image = GetComponent<Image>();
RectTransform rectTransform = image.rectTransform;
float width = rectTransform.rect.width;
float height = rectTransform.rect.height;

假如是3D组件,如 MeshRenderer?对象,那么我们就用MeshRenderer中的bounds属性获取,如:

MeshRenderer meshRenderer = GetComponent<MeshRenderer>();
Bounds bounds = meshRenderer.bounds;
float width = bounds.size.x;
float height = bounds.size.y;

假如是?2D SpriteRenderer 组件,同样可以用SpriteRenderer的bounds属性获取宽高:

SpriteRenderer spriteRenderer = GetComponent<SpriteRenderer>();
float width = spriteRenderer.bounds.size.x;
float height = spriteRenderer.bounds.size.y;

文章来源:https://blog.csdn.net/mr_five55/article/details/135396427
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。