Billiard Fixed Point 3D Physics
Hi,
Thank you for purchase,
I hope my package will help you.
The package has a game state saving and reconnecting functionality
The package has a 100% deterministic fixed- point C# - open source physics engine
( Calculable Mechanics ) for ball pool game ,
Fixed- point physics works the same on all platforms and has no server-client physics
synchronization problems, and you don't need to frequently send the position of the balls
on the table to players devices
The physics has a lot of functionality for a professional game of billiards , and includes different
types of cue hitting
Masse Jump Break Topspin and Backspin Screw etc.
Physics works for primitive colliders like Sphere, Capsule, Cube and Plane, physics also works
for Surface Collider based on Bezier curve.
Features
- 100% deterministic fixed- point C# - open source physics engine
- Physics for professional billiard game
- Management of the cue, with considering the location of the board and balls
Package contains room and 8 foot pool table
Package also contains balls and cue for 8 ball pool game
Package also contains textures and materials for them
How the package works
Open the scene Assets/LUCKYCODE/Billiard/Scenes/BallPool8 and play.
For testing physics , open the scene Assets/LUCKYCODE/CM/TestPhysics/TestPhysics, and
play.
The game works with Calculable Mechanics v2 ( fixed-point) 3D physics engine ).
Physics works only with long values and because of this physics simulation is the same on
different devices and you don't need to frequently send the position of the balls on the table to
players' devices.
Main game objects in the scene
( GameManager, EightBall_8_ft, UI )
The main objects in the games
( BilliardGameManager, BilliardPhysicsManager, CueController, PocketsManager, BallsManager
, TableManager)
CmSpace with all scripts in the folder “Calculable Mechanics v2” is a fixed-point open source
physics engine
UnityCmSpace with all scripts in the folder “UnityCalculableMechanics” responsible for
integration “Calculable Mechanics v2” with Unity
How to modify the contents
If you need to edit the table, size and type, in the “Create Data” choose table name and type,
and use “Update content” in the menu of “TableManager” like on the attached image below
For more info about Billiard Table Constructor you can watch video here
This function converts all float values of a physical objects into long values and by this physics
becomes deterministic ( fixed-point ) and physics will work only with long values.
Note.
After final converting physics objects, You shouldn't do it again
Do not use different values of set up physics values for different builds
This can become the reason of different physics simulation
Also look at the “GameManager” BilliardGameManager settings and controllers, where you can
modify the