'Ten Minute Physics' that you can learn physics-based simulations that can be described in JavaScript in an easy-to-understand manner and actually move the demo



YouTube channel Ten Minute Physics posts a video of a physics-based simulation finished with computer graphics. Maltese Miller, the operator and NVIDIA employee, introduced the many simulation codes that Ten Minute Physics has posted so far and the demos that actually work in the browser.

Ten Minute Physics
https://matthias-research.github.io/pages/tenMinutePhysics/index.html

Mr. Miller has posted 17 videos at the time of writing the article, and it is possible to learn various 2D / 3D simulations by watching them in order. In addition to tutorial videos, Mr. Miller has released simulation code and a demo site that can actually run the simulation.

◆ 01: Introduction to 2D web browser physics
The first Ten Minute Physics video showing how to simulate hard and soft objects, cloth, water, sand, and more with just a few lines of Javascript code in a self-contained HTML document. is. Following Mr. Miller's self-introduction, a simple 2D model creation method is introduced.

01 - Writing a physics simulation in 10 minutes - YouTube


Below is a simulation of the cannon trajectory written in JavaScript based on the content of the video. Newton's second law of motion is taken into account, and the trajectory calculation takes into account mass and acceleration. You can also click the link below to see a demo in action in your browser.

Cannonball
https://matthias-research.github.io/pages/tenMinutePhysics/01-cannonball2d.html



02: Introduction to 3D and VR web browser physics
It explains how to create a 3D physics demo that can run in a browser using the graphics engine THREE.js.

02 - Writing a VR physics simulation in 10 minutes - YouTube


Below is a VR demo of a 3D artillery shell using THREE.js. Click 'Run' on the upper left of the screen to start the shell.

Cannonball 3d
https://matthias-research.github.io/pages/tenMinutePhysics/02-cannonball3d.html



◆ 03: Handling ball collision in 2D
A video demonstrating how to handle ball collisions in 2D and how to create a billiards simulator with a standalone HTML document that works in any browser.

03-Writing a billiard simulation in 10 minutes-YouTube


A demonstration of ball collision processing like billiards is open to the public.

Billiard
https://matthias-research.github.io/pages/tenMinutePhysics/03-billiard.html



◆ 04: How to write a pinball simulation
It shows you how to write a pinball simulation from scratch that works in any browser.

04-How to write a pinball simulation-YouTube


The actual simulation can be confirmed from the following page.

Pinball
https://matthias-research.github.io/pages/tenMinutePhysics/04-pinball.html



◆ 05: The simplest physical simulation method
This is a video that introduces how to operate a simulation with restrictions that objects can only move in certain places, unlike previous simulations where objects were moved freely.

05-The simplest possible physics simulation method-YouTube


Below you can see a demonstration of moving an object that can only exist on one line, simulated according to the concept called position-based physics (PBD).

Constrained Dynamics
https://matthias-research.github.io/pages/tenMinutePhysics/05-bead.html



◆ 06: Triple pendulum simulation
It is a method of moving a triple pendulum in which three pendulums are connected.

06-The simplest way to simulate a triple pendulum-YouTube


The actual demo can be confirmed from the following. It seems that it can be used to simulate a wide variety of objects such as cloth, rope, hair, fur, and sand.

Pendulum
https://matthias-research.github.io/pages/tenMinutePhysics/06-pendulum.html



◆ 07: 3D vector mathematics for simulation
An introductory video to the 3D vector math you need to write a 3D simulation.

07-Intuitive 3d Vector Math for Simulations-YouTube


◆ 08: Realize interaction with the user in the 3D scene
It shows how to allow the user to pick up, move, and throw objects.

08-Provide user interaction with a 3d scene-YouTube


In the demo you can actually click and move objects.

Interaction
https://matthias-research.github.io/pages/tenMinutePhysics/08-interaction.html



◆ 09: Simulate with XPBD
A tutorial for simulating extended position-based physics (XPBD).

09 Getting ready to simulate the world with XPBD-YouTube


◆ 10: Simple and hard-to-break simulation of soft objects
It introduces how to simulate soft bodies in a stable and simple way.

10-Simple and unbreakable simulation of soft bodies-YouTube


In the demo, you can click on a squishy moving object to move it.

Soft body simulation
https://matthias-research.github.io/pages/tenMinutePhysics/10-softBodies.html



◆ 11: How to search for thousands of overlapping objects at high speed
This tutorial shows how to use spatial hashing to find the overlaps of thousands of objects.

11-Finding overlaps among thousands of objects blazing fast-YouTube


The demo shows how several objects collide. Click 'Show collisions' to make the collisions glow yellow.

Spatial Hashing
https://matthias-research.github.io/pages/tenMinutePhysics/11-hashing.html



◆ 12: 100 times faster soft body simulation
A 100x speed-up of soft body simulation is demonstrated by embedding a high-detail visual mesh into a low-resolution tetrahedral simulation mesh.

12-100x speedup for soft body simulations-YouTube


You can actually click and move the softbody.

Soft body simulation
https://matthias-research.github.io/pages/tenMinutePhysics/12-softBodySkinning.html



◆ 13: How to write a tetrahedral mesh for Blender
It explains how to create a tetrahedral mesh of a surface mesh using a method called the Incremental Delaunay method. It also briefly describes how to implement Python as a Blender plugin.

13-Writing a Tetrahedralizer for Blender-YouTube


◆ 14: Secret of cloth simulation
It explains how to simulate fluttering cloth.

14-The secret of cloth simulation-YouTube


With this method, a very fast and stable demonstration that simulates 6400 triangles at 30 fps or more on a smartphone has been realized. This is also all written in JavaScript.

Cloth Simulation
https://matthias-research.github.io/pages/tenMinutePhysics/14-cloth.html



◆ 15: Self-collision, the most difficult problem in animation
Five tricks are introduced to stably handle the self-collision problem that occurs when one cloth overlaps.

15-Self-collisions, solving the hardest problem in animation-YouTube


When you move the demo, you can see how the cloth flutters down from above.

Cloth Self Collision Handling
https://matthias-research.github.io/pages/tenMinutePhysics/15-selfCollision.html



16: Simulation on GPU
This tutorial provides a quick introduction to how to do simulations on the GPU. This method uses, for example, NVIDIA Warp for writing simulations in Python.

◆16-Simulation on the GPU-YouTube


◆ 17: How to write an Euler fluid simulator with 200 lines of code
It explains how to reproduce a fluid simulation based on Euler's equations in just 200 lines.

17-How to write an Eulerian fluid simulator with 200 lines of code.-YouTube


The demo that was actually reproduced looks like this. You can enjoy changing the flow of fluid by moving the central gray sphere.

Euler Fluid
https://matthias-research.github.io/pages/tenMinutePhysics/17-fluidSim.html



in Software, Posted by log1p_kr