Unity中如何计算两个localScale的比例并应用至另一GameObject?
计算缩放比例并应用到第三方GameObject
需求:计算某GameObject正常状态与放大状态的localScale比例,再将该比例应用到第三个GameObject,使其localScale乘以该比例。
修正后的示例代码
// 获取GameObject正常状态的缩放值 var normalScale = GameObjectA.transform.localScale; // 获取GameObject放大状态的缩放值 var enlargedScale = GameObjectAenlarge.transform.localScale; // 计算正常状态与放大状态的缩放比例 var scaleProportion = normalScale / enlargedScale; // 将比例应用到GameObjectB的缩放上 GameObjectB.transform.localScale *= scaleProportion;
代码说明
- 修正了原代码的大小写错误:Unity中Transform的缩放属性是
localScale(首字母大写),而非localscale - 补全了原代码缺失的变量定义逻辑,让代码结构更清晰
- 使用
*=运算符简化了最后一步的赋值操作
内容的提问来源于stack exchange,提问作者jasmine zhao
相关产品推荐
相关产品推荐

