yoga
yoga copied to clipboard
Converts and optimizes images and 3D models
See @nekohayo issue on YOGA Image Optimizer → https://github.com/flozz/yoga-image-optimizer/issues/20
Looking at [zeux/meshoptimizer](https://github.com/zeux/meshoptimizer), we could use some optimization to assimp output geometries. First do some tests with outputted geometries by YOGA, count the gains, and see if an integration as...
Draco is a powerful 3D library to compress 3D meshs: https://github.com/google/draco What about Yoga compatibility? it could be a must to have.
Someone requested an option to keep metadata, so I open this issue to keep the information. Questions that should be answered before: * How to achieve this for each formats?...
Currently, yoga is not able to import a glb, as the check for the format wants to make sure that the filename ends with `.glb` (and it does not because...
Some files like FBX support lights and cameras, but these are not always useful. Assimp supports an importer post-process called `aiProcess_RemoveComponent` and configured with: ```c++ importer.SetPropertyInteger(AI_CONFIG_PP_RVC_FLAGS, aiComponent_CAMERAS | aiComponent_LIGHTS); ```...
In `yoga/model/assimp.cpp`, `extract_image_nodes` does not extract already embedded textures, they are ignored. Keeping the very same convention than assimp, we could just fill `imageNode` with: ```c++ auto imageNode = new...
Add choices for JPEG optimization: * Guetzli + MozJPEG * Always reencode JPEGs using Guetzli and then use additional MozJPEG (lossless) optimization * MozJPEG * Always reencode JPEGs using libjpeg...
When doing a **JPEG to JPEG optimization**, we should never have an output image bigger than the input one. * If the guetzli+mozjpeg reencoding produce a smaller image → keep...
## Expected Behavior When trying to optimize a glb file, application should return an optimized glb file. ## Current Behavior When trying to optimize a glb file, application returns `ValueError:...