Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Magnum to latest #2278

Merged
merged 3 commits into from
Dec 11, 2023
Merged

Update Magnum to latest #2278

merged 3 commits into from
Dec 11, 2023

Conversation

mosra
Copy link
Collaborator

@mosra mosra commented Dec 7, 2023

Motivation and Context

Assorted ~10kLOC update containing mainly various prerequisites for the batch renderer, and additions to Python bindings.

  • More efficient packing of GL::Buffer and GL::Mesh internals -- it used to take 48 bytes per mesh attribute, now it's just 24. It also no longer does nasty voodoo with in-place construction of a std::vector.
  • New MaterialTools::removeDuplicates() utility for reducing the amount of redundant materials in a (batch composite) file. There's a corresponding magnum-sceneconverter --remove-duplicate-materials option as well, and it's in the materialtools Python bindings too. In practice it will need a material canonicalization utility (such as removing empty layers, redundant default attributes and such) to truly remove all duplicates, that's coming next.
  • New SceneTools::mapIndexField() family of tools for remapping mesh, material, camera, ... references in a scene, such as for example after duplicate material removal.
  • Python bindings:
  • Other changes.™

Oh, and I made Utility::String::lowercase() >10x faster while being idle on the weekly call, and then 2x more using AVX2, so ~25x faster. See mosra/corrade@8085201 and mosra/corrade@8010c5c...d40ff9d for details, the "naive" case below is the previous implementation.

image

How Has This Been Tested

💚

Copy link
Contributor

@0mdc 0mdc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you!

Copy link
Contributor

@aclegg3 aclegg3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

❤️

Copy link
Contributor

@jturner65 jturner65 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very nice.

@mosra mosra merged commit 5ca61eb into main Dec 11, 2023
10 checks passed
@mosra mosra deleted the update-magnum29 branch December 11, 2023 09:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed Do not delete this pull request or issue due to inactivity.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants