- Home /
Mesh bounds not updating size of mesh?
I'm trying to set a mesh to an exact size in Unity's units. To do this I am trying:
MeshFilter headerMeshFilter = menuHeaderObj.GetComponent<MeshFilter>();
Mesh headerMesh = headerMeshFilter.mesh;
headerMesh.bounds = new Bounds(Vector3.zero, new Vector3(100, 550, 0));
headerMeshFilter.mesh = headerMesh;
headerMesh.RecalculateBounds();
But the mesh's size does not change. Is there a step I am missing?
I'm not totally sure, but I don't think that resizes the mesh. If you look on the GameObject this script is running on you'll probably see that the $$anonymous$$eshFilter uses and instance after this code is run. So it's working, but there is no visible change. Just because a $$anonymous$$esh's Bounds change doesn't mean that the mesh will grow to fit them. Bounds indicate a set of extents independent of a Transform.
Just scale your object to whatever you need it to be. If it's not equal to one from the start, either make it that way, or calculate the difference between it's starting scale and 1; use that value as a multipler for the scale your trying to set your object to.
Answer by alienwoods · Aug 06, 2013 at 10:53 PM
I had the same problem, but i just add the following to my generated mesh script file:
GetComponent("MeshCollider").enabled=false; GetComponent("MeshCollider").enabled=true;
This do the magic, and it makes the new form of the new mesh work with the physics.
Your answer
![](https://koobas.hobune.stream/wayback/20220613091705im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Multiple Cars not working 1 Answer
Distribute terrain in zones 3 Answers
How do I sync a mesh over network? (Photon) 1 Answer
Subdivide mesh C#... help 0 Answers
How to Move Vertices from a Mesh to a Specific Location 2 Answers