Jump to content
  • Advertisement
Sign in to follow this  
Happy SDE

MT libraries in modern games.

This topic is 479 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi Forum!

Till today I have used WINAPI functions/sync primitives and Microsoft’s PPL in pipeline.
It seems, that VS 2015 had some changes from VS 2010 in C++ std implementation, which is not as slow as it used to be.
I am going to start using MT in my game.
Target platform: PC. XBO in far future, PS4 – not sure.

I would like to know, what libraries are popular in modern (AAA) games?
There are some options:

1.    C++ std library.
2.    WINAPI + RAII wrappers (ATL/WTL/...)
3.    Custom in-house made library.
4.    Other well known library not listed here

Are there some gamedev-related topics, that are different from Windows Desktop development?
Are there some gamedev-related caveats that I should be aware of?
If game developers use custom libraries, what is difference from std library?

Thanks in advance!

Edited by Happy SDE

Share this post


Link to post
Share on other sites
Advertisement
If your target platforms are relatively up to date, C++ standard library is the most convenient and portable option.

If you happen to have a ton of multithreading code lying around from pre-2011, though, there's nothing wrong with using it still.

For new projects I'd personally prefer std stuff over hand-rolled wrappers.

Share this post


Link to post
Share on other sites
There's a lot of stuff in the PPL or any modern game engine that's not present in std though. So it's fine to use std to create threads and synchronize them with each other, signal/wait/etc... But on top of that you'll have to build your own thread pool and task queue.

Share this post


Link to post
Share on other sites

Thank you all for help!

So, C++ standard library.

Summed up:
1.    There is no significant overhead in VS implementation compare to native WINAPI calls.
2.    It is available on XBO and PS4 and is not banned by platform vendors (like Microsoft do for CreateFile():
“Minimum supported client: Windows XP [desktop apps only]”
3.    MT principles in gamedev are much the same as in general C++ programming, and C++ standard library is a good low level abstraction layer to build games on top of it.

Edited by Happy SDE

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!