Open Growl3D opened 1 year ago
Blender's own Mesh.transform()
and Mesh.flip_normals()
functions destroy the custom normals, and I very much wish they didn't.
@Growl3D Can you try this version and see if the export result is as you expect it to be? blender-omsi-exporter_split-normals.zip
Hi RoadHog, just writing to say I have got your message, I'm just doing a lot of overtime so no time for development atm. I'll test this the coming Monday.
Hi RoadHog, I've sent you a friend request on discord so I can send you some examples of the results now I've had a chance to test this new branch.
There does appear to be at least some cases (e.g. #17) in which exported normals are not correct, so I'm reopening this until I have unit tests to prove the exporter is working as intended.
https://github.com/Road-hog123/Blender-OMSI-Exporter/blob/912a67d0c5899a7204afd2bd1876d1523a8b2784/io_export_o3d/exporter.py#L251-L252 Yes, let's translate direction vectors, I'm sure that'll work just fine... 🙄
Experimental fixed versions: blender-omsi-exporter_3.2.1-rc.0.zip for Blender 3.6 LTS & 3.3 LTS blender-omsi-exporter_4.0.1-rc.0.zip for Blender 4.1 & 4.0
This seems to have solved it. I used the version 3.2.1-rc.0.zip on 3.6.4. The separate models are now appearing as they should.
(Small edit: These models are, at least)
The problem
Currently the exporter doesn't support custom split normals. These are used when the bevel modifier has the "Harden Normals" setting checked, or when using the Weighted Normal modifier. The autosmooth setting, found in the object data properties, under the subheading, normals, is required for these settings to work correctly. This causes faces to maintain uniform and flat shading on the model, while maintaining smooth curvature, unlike the usual method of using the edge split modifier.
The current workflow
Currently I am turning off the specularity in the material settings, using the edge split method instead to avoid any odd shading, and making use of 'container loops'.
The solution
For support to be added for this feature if at all possible, I can provide a test file if necessary.