Home > Back-end >  Why cube mesh becomes a plane when in high resolution?
Why cube mesh becomes a plane when in high resolution?

Time:10-27

I use the following code to generate a Cube as a single mesh. My purpose is to generate a sphere from it by normalizing as I have shown in the commented line (I just have to do that to all those statements in the following lines). The problem here is that the mesh changes from a cube to a flat plane as I keep increasing the resolution (parameter given as public int resolution).

(This code was inspired by this video enter image description here

At Resolution = 122 : enter image description here

At Resolution = 182 : enter image description here

At Resolution = 344: enter image description here

Why is this happening? How should I correct it?

(I have also posted this in unity forums: Why cube mesh becomes a plane when in high resolution?)

CodePudding user response:

Ok I found the answer. This is exceeding the limit of vertices on unity api for 16-bit based meshes. I had to change it to a 32-bit indexed mesh to correct it.

Details are in this docuemntaiton page : https://docs.unity3d.com/ScriptReference/Rendering.IndexFormat.html?_ga=2.9556401.501737799.1635227368-67181881.1629608252

I just had to add the code :

mesh.indexFormat = UnityEngine.Rendering.IndexFormat.UInt32;

That was it.

  • Related