diff --git a/Changes.md b/Changes.md index d70a2b02e1..c77bca621d 100644 --- a/Changes.md +++ b/Changes.md @@ -18,8 +18,8 @@ as API (Application Programming Interface) changes, Testbed changes, and other c All shapes can collide with any other shape now (chains can collide with other chains or edges or any other kind of shape). - All shapes support vertex-radius based corner rounding now. This enables - [*capsule shapes* and other visibly rounded shapes](https://github.com/louis-langholtz/PlayRho/blob/master/Documentation/images/RoundedCornerShapes.png). -- [Rounded and modified corner collisions](https://github.com/louis-langholtz/PlayRho/blob/master/Documentation/CollisionHandlng.md). + [*capsule shapes* and other visibly rounded shapes](Documentation/images/RoundedCornerShapes.png). +- [Rounded and modified corner collisions](Documentation/CollisionHandlng.md). This supports the physical behaviors expected of rounded corners, like increased roll-ability, while preventing dragged shapes from getting stuck on composite surfaces. @@ -32,19 +32,19 @@ as API (Application Programming Interface) changes, Testbed changes, and other c them (from Fixture class) for reduced memory usage. - Renamed circle shapes as "disk" shapes to distinguish them as solid and never hollow. - Switched from reference-semantics to value-semantics. Pointers are gone from the interface. References to bodies, fixtures, joints, and contacts have been replaced with identifiers and function interfaces. -- Converted public "virtual" interfaces to value-semantic polymorphic value types. +- Converted public "virtual" interfaces to value-semantic polymorphic value types. For an introduction to polymorphic value types, please check out [C++: My Love Affair With Polymorphic Value Types](https://gist.github.com/louis-langholtz/5da900c8333eed26641a09bea7aa5c31). - Added support for C++11 range-based loops and constant expressions. - Added compile-time support for "zero-runtime-overhead" strongly-typed physical units (using an interface to [`constexpr` enhanced boost units](https://github.com/louis-langholtz/units)). For details on how to enable this, see - [Documentation/PhysicalUnits.md](https://github.com/louis-langholtz/PlayRho/blob/master/Documentation/PhysicalUnits.md). + [Documentation/PhysicalUnits.md](Documentation/PhysicalUnits.md). - Added compile-time support for `double` and `long double` floating-point types (in addition to `float`), and 32-bit and 64-bit fixed-point types. - Fully per-step run-time configurable (via - [`StepConf`](https://github.com/louis-langholtz/PlayRho/blob/master/PlayRho/Dynamics/StepConf.hpp)). + [`StepConf`](PlayRho/Dynamics/StepConf.hpp)). - In-depth per-step return value statistics (via - [`StepStats`](https://github.com/louis-langholtz/PlayRho/blob/master/PlayRho/Dynamics/StepStats.hpp)). + [`StepStats`](PlayRho/Dynamics/StepStats.hpp)). - Increased construction-time configurability of world instances (via - [`World::Def`](https://github.com/louis-langholtz/PlayRho/blob/master/PlayRho/Dynamics/World.hpp#L107)). + [`WorldConf`](PlayRho/Dynamics/WorldConf.hpp)). - Refactored numerous methods to be [non-member non-friend functions](http://www.drdobbs.com/cpp/how-non-member-functions-improve-encapsu/184401197). - Refactored various functions and procedures to be @@ -58,7 +58,7 @@ as API (Application Programming Interface) changes, Testbed changes, and other c ## Testbed changes -- Updated UI to provide full access to the per-step configurability, per-step statistics. +- Updated UI to provide full access to the per-step configurability and per-step statistics. - Added the ability to manipulate bodies while paused. - Added additional paths to find font and a font-less mode (instead of aborting). - Added more demonstrations/tests: Half Pipe, iforce2d's Topdown Car, Orbiter, Newton's @@ -68,7 +68,7 @@ as API (Application Programming Interface) changes, Testbed changes, and other c ## Other Changes - Unit tested via [Google Test](https://github.com/google/googletest/tree/aa148eb2b7f70ede0eb10de34b6254826bfb34f4) - and [over 400 tests](https://github.com/louis-langholtz/PlayRho/tree/master/UnitTests). + and [over 1000 tests](UnitTests). - Added continuous integration (CI) building and unit testing of repository updates for the Linux and Windows platforms. - Configured use of [COVERALLS](https://coveralls.io/github/louis-langholtz/PlayRho?branch=dev)