赞
踩
在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;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。