根据Unity3D中的父尺寸重新缩放3d模型

时间:2018-08-02 11:50:55

标签: c# unity3d mesh

我有一个拼盘,代表3D模型的基座。 它具有meshfilter / meshrenderer / meshcollider组件。 我的模型来自服务器,它由许多部分组成,它们有一个空的游戏对象作为父级,称为“ 3dModel”。 父级的比例为1.1.1。 每个部分都具有与盘片相同的组件。 但是,模型要比盘大或小。 有一个问题-重新缩放“ 3DModel”容器以固定盘的大小。 拼盘的比例为1.1.1,但模型的缩放比例为0.1、0.1、0.1,同时比拼盘大20倍。 另外,我被拒绝在服务器上固定规模。 大概有网格有没有计算尺寸的方法? 主要的问题是模型来自服务器,并且每次来自不同的规模。例如,现在我有一个0.1 0.1 0.1标度的苹果,但它使盘子增大了20倍。下次我有一个1 1 1比例的香蕉,它很小。 我不允许在服务器端更改任何值。任务是以编程方式进行。 enter image description here

1 个答案:

答案 0 :(得分:0)

我不确定我是否理解您的问题, 但是,如果您只需要在C#中缩放对象(基于父级缩放),则只需要这样:

yourgameobjectchild.transform.localScale = new Vector3(yourgameobjectchild.transform.parent.localscale.x + variabletochangethescale, yourgameobjectchild.transform.parent.localscale.y, yourgameobjectchild.transform.parent.localscale.z);