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 to Magnum with initial support for glTF export and CPU feature dispatch #1834

Merged
merged 3 commits into from
Aug 23, 2022

Conversation

mosra
Copy link
Collaborator

@mosra mosra commented Aug 18, 2022

Motivation and Context

Just a regular boring dependency update ... with 20k+ lines of changes.

  • Interfaces for generic scene export, including meshes, images, scene hierarchy, materials, lights etc. Not hooked up into the command-line tools yet so things like magnum-sceneconverter gripper_link.dae gripper_link.gltf aren't possible at the moment. But it's getting closer!

  • Initial implementation of a glTF export plugin, which is a prerequisite for the whole preprocessing pipeline in the batch renderer. Currently just (multi-)mesh export. Material, image and scene hierarchy export is in a branch and undergoing a final cleanup.

  • Compile-time and runtime detection of CPU features (such as AVX or ARM NEON) and dispatch. To be used to select among optimized code paths for batch transformation processing, broadphase visibility culling and other hot code paths in the batch renderer. Earlier benchmarks I did showed a possibility of getting a 2x to 9x speedup in transformation processing by using AVX intrinsics, depending on the compiler.

    image

  • All other changes and fixes that were too small and insignificant in comparison.

Updates to the batch renderer are depending on these, I'll submit them separately -- wanted to submit the heavy but uncontroversial stuff first to iron out potential build issues.

How Has This Been Tested

My CIs are passing. I'm hopeful it'll eventually be the case here as well :]

Types of changes

  • Docs change / refactoring / dependency upgrade

@facebook-github-bot facebook-github-bot added the CLA Signed Do not delete this pull request or issue due to inactivity. label Aug 18, 2022
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.

Thanks, merge when tests pass. 👍

Copy link
Contributor

@Skylion007 Skylion007 left a comment

Choose a reason for hiding this comment

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

Looks good to me. There seems to be a few build errors that have popped up though.

Oldest version supported by Magnum is now 1.77, from July 2020.
It's there, but it's not with all features the test needs yet.
@mosra mosra merged commit 5b7ecb3 into main Aug 23, 2022
@mosra mosra deleted the update-magnum15 branch August 23, 2022 17:54
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.

4 participants