A c++ Godot engine module containing utilites for working with mehses (Like simplification)
Go to file
2021-12-30 00:00:25 +01:00
doc_classes Sync classref with current source. 2020-06-20 23:33:45 +02:00
xatlas Use the piecewise generator by default. 2021-09-29 09:43:53 +02:00
.gitignore Initial commit. (A copy of my fast quadratic mesh simplifier module.) 2020-05-23 20:13:38 +02:00
config.py Removed the copyright header from config.py, as utf-8 characters apparently can cause issues. 2020-08-08 20:03:35 +02:00
defines.h Fix compile for 4.0. 2021-02-06 11:49:29 +01:00
fast_quadratic_mesh_simplifier.cpp Cleaned up the copyright headers. 2020-05-24 21:23:20 +02:00
fast_quadratic_mesh_simplifier.h Fix compile for 4.0. 2021-02-06 11:49:29 +01:00
fqms.h Cleaned up the copyright headers. 2020-05-24 21:23:20 +02:00
LICENSE Cleaned up the copyright headers. 2020-05-24 21:23:20 +02:00
mesh_merger.cpp Make sure to actually use the vector write proxies. 2021-08-11 18:39:03 +02:00
mesh_merger.h Fix compile for 4.0. 2021-02-06 11:49:29 +01:00
mesh_utils.cpp Check array sizes before trying to remove items from arrays in merge_mesh_array. 2021-12-30 00:00:25 +01:00
mesh_utils.h Added more parameters to uv_unwrap. Also changed fixWinding from true to false with a comment. 2021-09-29 11:10:49 +02:00
README.md Fix compile for 4.0. 2021-02-06 11:49:29 +01:00
register_types.cpp Fix compile for 4.0. 2021-02-06 11:49:29 +01:00
register_types.h Cleaned up the copyright headers. 2020-05-24 21:23:20 +02:00
SCsub Added uv_unwrap method to MeshUtils. Also added xatlas from engine/thirdparty to the module under a different namespace. I plan to modify it. 2021-09-28 10:20:14 +02:00
simplify.h Fix compile for 4.0. 2021-02-06 11:49:29 +01:00

Mesh Utils Module

This is a c++ engine module for the Godot engine, containing my mesh merging utilities.

It supports both godot 3.2 and 4.0 (master last tested commit). Note that since 4.0 is still in very early stages I only check whether it works from time to time.

Pre-built binaries

You can grab a pre-built editor binary from the Broken Seals repo, should you want to. It contains all my modules.

Optional Dependencies

Mesh Data Resource: Support for merged meshes, even in gles2. Adds MeshMerger a few helper methods.

MeshUtils Singleton

Contains generic algorithms that manipulate meshes.

Mesh Merger

Works similarly to SurfaceTool, but it has more utility functions.

Fast Quadratic Mesh Simplifier

A port of https://github.com/Whinarn/UnityMeshSimplifier . For future reference it's based on e8ff4e8862735197c3308cfe926eeba68e0d2edb. Porting is mostly done, but it does needs some debugging (it has a crash if smart linking is enabled).

I might just return to using the original FQMS. As if meshes are merged together using MeshUtils.merge_mesh_array, or bake_mesh_array_uv the original algortithm will work fine. Still on the fence about it.

Building

  1. Get the source code for the engine.

If you want Godot 3.2: git clone -b 3.2 https://github.com/godotengine/godot.git godot

If you want Godot 4.0: git clone https://github.com/godotengine/godot.git godot

  1. Go into Godot's modules directory.
cd ./godot/modules/
  1. Clone this repository
git clone https://github.com/Relintai/mesh_utils mesh_utils
  1. Build Godot. Tutorial