meshoptimizer
Mesh optimization library that makes meshes smaller and faster to render (by zeux)
draco
Draco is a library for compressing and decompressing 3D geometric meshes and point clouds. It is intended to improve the storage and transmission of 3D graphics. (by google)
Our great sponsors
meshoptimizer | draco | |
---|---|---|
12 | 4 | |
4,969 | 6,251 | |
- | 1.7% | |
9.0 | 4.5 | |
8 days ago | 6 days ago | |
C++ | C++ | |
MIT License | Apache License 2.0 |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
meshoptimizer
Posts with mentions or reviews of meshoptimizer.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-03-30.
-
Nanite-like LODs experiments
1) I used meshoptimizer to simplify meshes and building meshlets. But to combine these meshlets (for more efficient simplifying) I built a graph with weights and partition it. In this weight some metrics are included: the shared border length of a pair of meshlets, their facing direction and other similar metrics. The next step is to simplify these groups of meshlets (fixate borders for each of them and simplify meshlets within the group). So, you can make dependencies of newly generated meshlets on the initial ones.
-
Will the same texture used in many gltfs be duplicated in memory?
Here are some amazing tools for compressing GLTFs: https://github.com/zeux/meshoptimizer/blob/master/gltf/README.md
-
Maximum size of scene or a project in THREE.JS
I've also had good results with this tool: https://github.com/zeux/meshoptimizer/blob/master/gltf/README.md and kt2tdecoder + meshopt_decoder
-
[Part 7] Update of my Vulkan renderer: LODs, Multiple different meshes, Memory Allocator, Render architecture and more
Implemented Mesh LOD system. LOD selection is done completely on GPU. I generate LODs using meshoptimizer.
-
Given a mesh without indices, how I generate indices for that mesh and remove the duplicate vertices?
Maybe Meshoptimizer can be useful?
-
[Part 4] Update of my Vulkan toy renderer: Mesh Shader Pipeline, Reversed-Z Depth Buffer, SPIRV-Reflect and many more
Added NVidia mesh shader pipeline support, with old pipeline still supported on top. Meshlets are generated using meshoptimizer.
-
Algoritm to simplify geometric data similar to texture bitmapping
I've used the "Simplification" operation of meshoptimizer to simplify 3D model geometry: https://github.com/zeux/meshoptimizer
-
help implementing LOD edge collapse algorithm
I call meshopt_simplify(). It uses a quadric error metric based mesh simplification of some sort. I haven't really looked into the details of how it works, but the code (with some comments referencing papers) can be found here: https://github.com/zeux/meshoptimizer/blob/master/src/simplifier.cpp
-
what is the size of a mesh vertex
hi! i am building a game engine with c and raylib and i want to use this library for optimizing meshes : https://github.com/zeux/meshoptimizer
-
Fast mesh decimation?
Have you considered this? https://github.com/zeux/meshoptimizer
draco
Posts with mentions or reviews of draco.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-07-17.
- how can I reduce size of a gltf file for web use?
-
How are rust devs doing?
File size is important on the web, so I wanted to use Draco, which doesn't have good support for Rust (though I'm sure clean bindings are possible).
-
WebAssembly vs. JavaScript: The Complete Guide
No direct DOM access is a bit of a pain, you're definitely not going to write your whole app in WASM anytime soon - it makes for decently good modules though, for example the Draco 3D geometry library provides a nice and clean WASM encoder/decoder module.
-
webVR ThreeJS games, hosting assets, cost-effective solutions?
This is not a direct solution to your problem. But you could use a compression tool like https://github.com/google/draco to reduce the total filesize.
What are some alternatives?
When comparing meshoptimizer and draco you can also consider the following projects:
assimp - The official Open-Asset-Importer-Library Repository. Loads 40+ 3D-file-formats into one unified and clean data structure.
meshlab - The open source mesh processing system
CGal - The public CGAL repository, see the README below
PCL - Point Cloud Library (PCL)
PhysicsFS - PhysFS++ is a C++ wrapper for the PhysicsFS library.
Open3D - Open3D: A Modern Library for 3D Data Processing
ozz-animation - Open source c++ skeletal animation library and toolset
gpr - General Purpose Raw image format
BunnyLOD - Cross platform GLFW based port of Stan Melax's BunnyLOD Easy Mesh Simplification
bolt - 10x faster matrix and vector operations