Skip to content

Commit

Permalink
Reordering readme file a bit
Browse files Browse the repository at this point in the history
  • Loading branch information
jrouwe committed Dec 27, 2023
1 parent 580748c commit 410958e
Showing 1 changed file with 13 additions and 9 deletions.
22 changes: 13 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,6 @@ A multi core friendly rigid body physics and collision detection library suitabl

For more demos and [videos](https://www.youtube.com/watch?v=pwyCW0yNKMA&list=PLYXVwtOr1CBxbA50jVg2dKUQvHW_5OOom) go to the [Samples](Docs/Samples.md) section.

To get started, look at the [HelloWorld](HelloWorld/HelloWorld.cpp) example. A [HelloWorld example using CMake FetchContent](https://github.com/jrouwe/JoltPhysicsHelloWorld) is also available to show how you can integrate Jolt Physics in a CMake project.

If you're interested in how Jolt scales with multiple CPUs and compares to other physics engines, take a look at [this document](https://jrouwe.nl/jolt/JoltPhysicsMulticoreScaling.pdf).

The slides for my GDC 2022 talk [Architecting Jolt Physics for 'Horizon Forbidden West'](https://gdcvault.com/play/1027560/Architecting-Jolt-Physics-for-Horizon) are now available ([video here](https://gdcvault.com/play/1027891/Architecting-Jolt-Physics-for-Horizon))!

## Design Considerations

So why create yet another physics engine? First of all, this has been a personal learning project and secondly I wanted to address some issues that I had with existing physics engines:
Expand All @@ -34,8 +28,6 @@ So why create yet another physics engine? First of all, this has been a personal
* The simulation runs deterministically, so you could replicate a simulation to a remote client by merely replicating the inputs to the simulation. Read the [Deterministic Simulation](https://jrouwe.github.io/JoltPhysics/) section to understand the limits of this.
* The simulation of this physics engine tries to simulate behavior of rigid bodies in the real world but makes approximations in the simulation so should mainly be used for games or VR simulations.

For more information see the [Architecture and API documentation](https://jrouwe.github.io/JoltPhysics/) section.

## Features

* Simulation of rigid bodies of various shapes using continuous collision detection:
Expand Down Expand Up @@ -97,7 +89,15 @@ For more information see the [Architecture and API documentation](https://jrouwe
## Required CPU features

* On x86 the minimal requirements are SSE2 but the library can be compiled using SSE4.1, SSE4.2, AVX, AVX2, or AVX512.
* On ARM64 the library requires NEON with FP16 support.
* On ARM64 the library by default compiles with NEON and FP16, on ARM32 it can be compiled without any special CPU instructions.

## Documentation

To learn more about Jolt go to the [Architecture and API documentation](https://jrouwe.github.io/JoltPhysics/).

To get started, look at the [HelloWorld](HelloWorld/HelloWorld.cpp) example. A [HelloWorld example using CMake FetchContent](https://github.com/jrouwe/JoltPhysicsHelloWorld) is also available to show how you can integrate Jolt Physics in a CMake project.

Some algorithms used by Jolt are described in detail in my GDC 2022 talk Architecting Jolt Physics for 'Horizon Forbidden West' ([slides](https://gdcvault.com/play/1027560/Architecting-Jolt-Physics-for-Horizon), [video](https://gdcvault.com/play/1027891/Architecting-Jolt-Physics-for-Horizon)).

## Compiling

Expand All @@ -108,6 +108,10 @@ For more information see the [Architecture and API documentation](https://jrouwe

For build instructions go to the [Build](Build/README.md) section. When upgrading from an older version of the library go to the [Release Notes](Docs/ReleaseNotes.md) or [API Changes](Docs/APIChanges.md) sections.

## Performance

If you're interested in how Jolt scales with multiple CPUs and compares to other physics engines, take a look at [this document](https://jrouwe.nl/jolt/JoltPhysicsMulticoreScaling.pdf).

## Folder Structure

* Assets - This folder contains assets used by the TestFramework, Samples and JoltViewer.
Expand Down

0 comments on commit 410958e

Please sign in to comment.