Unsmooth circle by blender export? Or my fault?

So i made a cube with an hole with a CAD-Software. And exported to gltf. Then i used the sandbox to get a babylon file, i also used blender exporter to get a comparison babylon file.

And you can easily see the differences, the file exported by babylon has a kinda wobbly edge and sides.
The sandbox export is perfectly round. Are there any settings in blender i forgot to set?

Can you share the glTF file?

Here you can get the files from: GitHub - nexbie123/BabylonTest: SafeBabylonAssets to share

There are some more. For this you basically wanna see the Cube, SandBoxCube and BlenderCube files

Like the telephone game, the more transitions the more that can get lost. My guess is the cube has a combination of flat & smooth shading. Somewhere in the work flow seems the entire mesh is flat shaded.
Both Blender & the Blender .babylon exporter do mixed shaded vertices.

This can be changed in Blender. Not sure your goal. The other thing to note is the difference in file size.

Ok maybe i will take a look how to change it in blender. For now it’s not such a big problem, just not so nice to look at… I would guess the different file size also comes from, that blender only exports is at one mesh and the sandbox does like 8 meshes. Like one for each side, and the hole also has two.

Idk maybe i find out how to set blender to also export smoother and in 8 meshes, because i actually prefer/need them… but yeah babylon sandbox does even different weird things like inverting the coordinates because my gltf files are bad? But blender also fixes that somehow to be right again…

  • select mesh
  • switch to edit mode, & also faces mode.
  • Select all the faces you wish to change to smooth
  • Execute Menu command shown

1 Like

i will try that and come back to you, for validation
Thank you for your support

If you are getting 8 meshes on import. You can then just select the cylinder mesh in object mode & right click. The menu allows you to changing the shading type right off that menu.

You can then join meshes in Blender. In object mode select all meshes, making sure that the mesh with the name you want is last. Then Crtl-j to join.

Nah, it already only loads one mesh of the main model form the gltf import. The sandbox of babylon imports the 8 meshes…

So for me it did not change much, the file size got bigger, but still no smooth circle.

Also added the Blender file to the Github. “NewCube.blend”

I am stupid with Blender but you are in safe hands with @JCPalmer :slight_smile:

Let me add as well @PirateJC to the thread

Ok, I actually loaded the .blend because I remembered that years ago that CAD-software did odd stuff with normals. Blender calls it “split-normals”. Sure enough they are on all 42 meshes.

They are really hard to work with. The exporter is programmed to handle them, but they cannot be mixed with the other 2 (flat & smooth) in the same mesh during export. I only had one crude example that I had to make myself, when I basically re-designed the exporter for 2.80. Not working perfectly, as you have seen, but I do not want to touch that stuff.

For geo actually built in Blender, I have to imagine everybody does the Blender 2.80+ techniques I described above. It is dead simple.

You can clear it on a single mesh clicking on the item shown in red, which I did. I then decided that stuff really needs to be joined. 42 meshes for just this tiny thing is insane. So after I changed the cylinder, I tried to join everything to reduce the number of times of clearing the normal data. Blender immediately terminated!!, which does not happen often.

I have not done anything more since, like :

  • joining while everything was still "split-normal"ed, or
  • clearing the normals all first before joining.

Hopefully one of those works.

2 Likes

Additional: I am really surprised that Blender’s GLTF importer even maintained these kind of normals. How did you even get this into Blender? I could never get your .gltf / .bin to import. If you imported some other way, switch to trying to import a .glb, might be another way to go.

Thanks for all this information, but clearing the normals has no change on the export. Still as before.

Also idk how i managed to import them, i just did and it was fine. I will try to import it as .glb soon