mosra / magnum

Lightweight and modular C++11 graphics middleware for games and data visualization
https://magnum.graphics/
Other
4.76k stars 437 forks source link

2020.06 release #411

Closed mosra closed 4 years ago

mosra commented 4 years ago

Should have been 2019.12, but hey -- I took a (semi-)break and survived until 2020!

There's a ton of little things, so better list them so I don't forget:

Stretch goals:

ytain commented 4 years ago

Regarding TextureTools::atlas() there are two suggestions: https://github.com/juj/RectangleBinPack https://github.com/TeamHypersomnia/rectpack2D

And I wanted to bring you attention to additional stuff that might give you ideas later on the road: https://github.com/azhirnov/FrameGraph https://github.com/acdemiralp/fg Those two will assist more the Vulkan and OpenGL AZDO paths.

//Edit Forgot to mention also a serialization suggestion, header only https://github.com/USCiLab/cereal (of course you could ignore the xml and json part of the serialization, and I'm not sure if it's zero-copy). //Edit

Best regards

mosra commented 4 years ago

@ytain thank you! Yes, that thing from TeamHypersomnia is what I wanted to implement, as it's pretty small at its core.

Serialization (or its beginnings at least) will be done as part of #371. I really wanted to try something totally different here (with deserialization taking exactly 0 instructions), will see how it goes.

aristotaloss commented 4 years ago

This might be or not be a stretch, but it could be interesting: through MoltenVK you might be able to add Metal as a render target, making the iOS/Mac support better since Apple is now so heavily pushing Metal (even deprecating OpenGL). Just an idea - it would be really interesting since mobiles are our primary target and Magnum seems really great :)

mosra commented 4 years ago

@Velocity- That's the plan, in fact :) Though probably won't fit into this release, the list above is quite long already.

alanjfs commented 4 years ago

Powered By Magnum

You should have a logo printed up of that, happy to put that in the README of the project. ^__^

ytain commented 4 years ago

With regard to framegraph stuff that I mentioned in an earlier post of mine in this thread, you can see the benefits of using a framegraph approach to make a performant 3d engine.

Case in point, there's a graph showing which GPU states are expensive when changing:

https://computergraphics.stackexchange.com/questions/37/what-is-the-cost-of-changing-state/46#46

Best regards

mosra commented 4 years ago

:tada: All done, finally. Release notes here: https://blog.magnum.graphics/announcements/2020.06/