-uPhysics-
uPhysics is a custom, selfmade, integrated and dedicated game physics engine for Unity3D. It’s intend is to speed up the internal physics by replacing it completly. It archives its task by using extensive multithreading, moving any pressure from unity’s mainthread to remaining cores/threads. This will ensure a stable and high framerate on the mainthread while still having proper physics. It archives speedups by an order of magnitude and is capable of moving thousands of objects at once.
uPhysics will get alot of new features in the near future. See the “In the works” list for more details.
Features
-
Highly multithreaded
-
Load balancing of transform components over several frames, increasing performance by alot
-
Rich set of collider shapes
-
Sphere collider
-
Box collider
-
Capsule collider
-
Cylinder collider
-
ConvexHull collider (Mesh)
-
kDOP collider (Mesh)
-
Convex decomposition collider (Mesh)
-
Automatic compound collider
-
Any shape can move freely
-
Any collider can be used as trigger
-
Rich math
-
GC friendly (Allocators)
-
Rigidbodies
-
Rigidbody dynamics
-
Constraints
-
Global forces
-
Many little snippets to be discovered
-
Fast!
In the works
-
Joints/More constraints
-
Local and single/two body forces
-
TriMesh collider (Standard unity mesh collider)
-
Terrain collider
-
Bug fixes and tweaks
-
Raycasting
-
Multi simulation in one scene, not just one
-
Further stability, performance and memory improvements
-
Network syncronized/optimized physics
-
Decoupling of code, virtualization of objects so objects can be created/hosted from script without the need of an actual GameObject as host, dramatically increasing performance for server’s and alike
-
2D and particle load balancing
-
Native and GPU acceleration
-
Rich wheel collider and Vehicle API
-
Controller’s (Character, Vehicle, … )
-
Simulation rewinding/replaying/recording
-
Better event integration using unity’s serializable events
-
Better convex decomposition for uPhysics AND Unity mesh colliders (Concave colliders)
-
Rope physics for uPhysics AND Unity
-
Destruction/Deformation for uPhysics AND Unity
-
Soft body physics (Cloth)
-
Inverse kinematic (Ragdolls and alike)
-
Raycasting/Physics in editor while not in playmode
-
uPhysics → Unity collider interaction (Lets uPhysics colliders interact with Unity ones)
-
Demos/Videos/More documentation
Changelog:
2.1.1
- Added cylinder collider
- Added constraints (WorldPoint, Grab, Distance)
- Added global forces (custom gravity, Motor (torque), singularity )
- Added manual simulation stepping
- Fixed editor stepping related bugs
2.1.0
- Added dynamics
- Added rigidbodies
- Added constraints backend
- Added force backend
- Reviewed/Optimized colliders, added cached ones
- Disabled terrain collision, due to major update (coming back next version with TriMesh collision)
- Reviewed/Optimized uPTransforms
- Greatly optimized LoadBalancer and PhysicsLoop performance
- Optimized garbage production with allocators
- Optimized multithreading
- Added sweep and prune broadphase (now default one)
- Optimized convex object collision (implemented MPR)
- Added recognition mode for triggers
- Rigid-Rigid, Rigid-Collider, Collider-Collider collisions
- Source is now more OOP
- Much more little details
2.0.0
- Reviewed full system
- Added full set of colliders
- Various mesh colliders
1.0.0
- Initial release
Asset store packages:
uPhysics / uPhysicsPro
(Packages were previously seperated into library and source version. Both versions now include the full source code!)
Manual (Deprecated)
Support: Sharp.Development@web.de
NOTES
- Anyone owning a uPhysics/uPhysicsPro copy can receive access to the private dropbox project and therefore to the newest version without the need to wait for the asset store submission. Just message our support with your invoice number.