Humm and Strumm is a project to create a high-performance, concurrent 3D video game engine in modern C++.
|Tags||3D Game Engine concurrency game development cross-platform development C++ Library OpenGL|
|Licenses||GPLv3 Creative Commons Attribution-Share Alike 3.0 Unported|
|Operating Systems||Windows Unix Linux BSD|
|Implementation||OpenGL OpenAL zlib/libpng libbvorbis wxWidgets Unicode c++11|
The Humm and Strumm Project is no longer located on Google Code, but instead has moved to Sourceforge due to Google Code removing their release uploads space in the near future. We have also moved our website from our old Blogger blog to a new website that has a CDash dashboard (which soon will have nightly build results), Doxygen API documentation, and our news and announcements. You can find our new homepage at http://hummstrumm.sourceforge.net/. You can also find a blog post with links to all our new development tools, such as downloads and our issue tracker, at http://hummstrumm.sourceforge.net/node/44. And as always, we'd love it if you subscribe to one of our mailing lists or talk to us on IRC; for more information, go to http://hummstrumm.sourceforge.net/contact.
Release Notes: This release has the basis for a concurrent game loop with Intel TBB. There was a lot of code cleanup, both within the engine and in the build system. This should give better support for MSVC, better error messages during configuration, and cleaner code. This release adds Eigen 3 as a required library, which benchmarks showed was 6 times faster than the project's own math code. Unit tests are now based on the cipra Unit Testing Framework.
Release Notes: This release adds ISO 8601 serialization. The Date/Time classes can now be serialized to and from a subset of the ISO 8601 standard. Better integration is now made with the standard library. This process will continue with the next release. The logging system is now based on the standard iostream library, allowing any class which can be written to std::cout to be written to the log. The log supports multiple configurable backends. This is the last logging functionality change.
Release Notes: The engine now supports a programmatic interface to detect the current date, time, and timezone information. Its logging capabilities have been made much more flexible, allowing for multiple logs, user configurable logging, and modular logging. In addition to GCC, this release detects and explicitly supports the new Clang C++ Compiler, about which interest has been rising both in the GNU community and in the *BSD community, due to its speed, modularity, and permissive license. If the compiler supports the new C++11 standard, this release makes use of some new features.
Release Notes: X11 rendering was implemented, which means that there is a window that appears on X11 enabled systems displaying a rotating cube. Humm and Strumm now supports *BSD systems out of the box. This support has been tested with FreeBSD x64. Various attributes about the system, including clock frequency, memory usage, and processor flags, can now be detected at runtime. SSE, CPPUnit for Windows, build system refactoring, and Geometry Mathematics classes were also added.
Release Notes: This, like all 0.x releases, is a pure game engine release, which means there is no playable game yet. This release adds on to the core functionality by introducing debugging helpers, type wrappers, and some system functions. It also has the basis of the rendering engine--the Vector Algebra mathematics classes. Furthermore, the test cases have started to be migrated to CppUnit, so CppUnit is now a requirement to compile the code.