IO: C++ STL exporter

There was a C++ STL importer since Blender 3.3, but no corresponding C++ STL exporter. This PR is adding said exporter: taking https://projects.blender.org/blender/blender/pulls/105598 and finishing it (agreed with original author).

Exporting Suzanne with 6 level subdivision (4 million triangles), on Apple M1 Max:
- Binary: python exporter 7.8 sec -> C++ exporter 0.9 sec.
- Ascii: python exporter 13.1 sec -> C++ exporter 4.5 sec.

Co-authored-by: Iyad Ahmed <iyadahmed430@gmail.com>
Pull Request: https://projects.blender.org/blender/blender/pulls/114862
This commit is contained in:
Aras Pranckevicius
2023-11-19 16:41:20 +01:00
committed by Aras Pranckevicius
parent 31abb2b3af
commit 17c793e43c
10 changed files with 445 additions and 3 deletions

View File

@@ -514,6 +514,8 @@ class TOPBAR_MT_file_export(Menu):
self.layout.operator("wm.obj_export", text="Wavefront (.obj)")
if bpy.app.build_options.io_ply:
self.layout.operator("wm.ply_export", text="Stanford PLY (.ply)")
if bpy.app.build_options.io_stl:
self.layout.operator("wm.stl_export", text="STL (.stl) (experimental)")
class TOPBAR_MT_file_external_data(Menu):