Torque3D, C++ Standard Library and Boost Library
by Luis Anton Rebollo · in Torque 3D Professional · 09/21/2012 (7:57 am) · 7 replies
What is the opinion of the "Torque 3D Open Source Committee" on use C++ Standard Library and Boost Library?
About the author
I'm working on a port of Torque3D to OpenGL and Linux/SteamOS
#2
09/21/2012 (9:21 am)
When programming from the ground-up, I like to work with the standard library. For most of my small projects, Boost has been weighty overkill. It definitely has a lot of benefits, but I haven't needed those benefits so far.
#3
I used Boost for a small project to do networking with UDP and threads. It found Boost to be a very comprehensive and well designed library. Are we talking about the same set of libs?
09/21/2012 (10:23 am)
Quote:is that it's a horrible messHuh?
I used Boost for a small project to do networking with UDP and threads. It found Boost to be a very comprehensive and well designed library. Are we talking about the same set of libs?
#4
(I say 1998 because I remember reading a thread about TGE and the standard library a while ago. The reason put forward for TGE not using the standard library was that at the time the engine was written, there was no standard library :P.)
09/22/2012 (12:13 am)
I reckon that even if Boost is overkill, T3D should definitely make more use of the standard library. It's there for a reason, and we don't have to code like it's 1998 any more!(I say 1998 because I remember reading a thread about TGE and the standard library a while ago. The reason put forward for TGE not using the standard library was that at the time the engine was written, there was no standard library :P.)
#5
09/22/2012 (3:03 am)
As Bjarne Stroustrup says throughout The Book, there are many reasons to "reinvent the wheel" if you have more understanding of the needs of your specific system than the designers and implementers of the STL. I'm not saying that this is the reason T3D has done so - and in several cases I have wished it had not - but the STL carries a bit of extra overhead because of the specification it was built to meet.
#6
09/23/2012 (4:31 pm)
No serious game engine uses the standard library (particularly STL) or Boost. It doesn't take very long to write your own string and container classes and once you have done you have full control over them. Use the standard library and you have different libraries on different platforms all doing slightly different things - some of them have poor performance (particularly Microsoft's). Have a compile issue and want to fix it: try and look at the code for STL - I dare you - it'll make your head spin. Why bother with all that just 'because it's there'? Garage Games have already written the classes needed to build a game engine so it's not like you'd save any time by using STL/Boost, even if that was a good argument.
#7
09/25/2012 (5:03 pm)
Would really prefer that Boost and STL Stay out of the core of T3D. Those aren't required nor desired for every project. The engine already works and runs as it is, so why add in Boost and STL now?
Associate Scott Burns
GG Alumni