A Godot c++ engine module. It adds a different data-only mesh type with an importer, so mesh data is available even on gles2.
Go to file
Relintai d25ee476c4 Re-extracted the class docs. 2022-01-12 21:59:38 +01:00
doc_classes Re-extracted the class docs. 2022-01-12 21:59:38 +01:00
nodes Added a mesh_data_resource_changed signal to MeshDataInstance. 2021-12-29 18:22:44 +01:00
plugin Added mesh_utils optional dependency. If present you get mesh simplification/optimization - remove doubles + remove doubles interpolate normals for now - options. 2021-07-19 18:52:00 +02:00
plugin_collada Fix build for the new 3.x branch. 2021-11-17 14:03:51 +01:00
plugin_gltf Fix build for the new 3.x branch. 2021-11-17 14:03:51 +01:00
props
screenshots
.gitignore
LICENSE
README.md Added mesh_utils optional dependency. If present you get mesh simplification/optimization - remove doubles + remove doubles interpolate normals for now - options. 2021-07-19 18:52:00 +02:00
SCsub Fix compile when the props module is not present. 2021-11-23 17:14:15 +01:00
config.py Re-extracted the class docs. 2022-01-12 21:59:38 +01:00
mesh_data_resource.cpp Removed the (empty) uv_unwrap method from MeshDataResource. the mesh utils module has it implemented. 2021-12-29 00:43:24 +01:00
mesh_data_resource.h Removed the (empty) uv_unwrap method from MeshDataResource. the mesh utils module has it implemented. 2021-12-29 00:43:24 +01:00
mesh_data_resource_collection.cpp
mesh_data_resource_collection.h
register_types.cpp
register_types.h

README.md

Mesh data resource Module

A c++ Godot engine module, that adds a resource, which contains raw mesh data for merging and collider information.

The module also comes with importers (gltf, and collada for now), you can import 3d models as MeshDataResources with these.

Optional Dependencies

https://github.com/Relintai/props: If present, you also get a prop importer for MeshDataInstances. https://github.com/Relintai/mesh_utils: If present, you get mesh simplification/optimization options at import.

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.

MeshDataResource

The resource that holds mesh and collider data.

MeshDataResourceCollection

Holds a list of MeshDataResources.

MeshDataInstance

You can easily put MeshDataResources into the scene with these. They are equivalent to MeshInstances, except they work with MeshDataResources.

Importers

In order to import a 3d model as a MeshDataResource, select the model, go to the import tab, and switch the import type to <type> MDR. Like:

Import Tab

If you set the import type to single, the importers will convert the first model that they encounter into a MeshDataResource, then save that, if you set it to multiple, you get a MeshDataResourceCollection as the main resource, and also all encountered models as files separately.

Since MeshDataResource can hold collider information, these importers can create this for you. There are quite a few options for it:

Colliders

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

last tested commit for 4.0

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