Home / index
Numerical Methods

Articulated Body Simulation and simulation-videogames

Lagrangian Dynamics' New Flavour Simulations

LOGO image unavailable. Sorry for the inconvenience.

A 3D articulated-body simulation software (specifically, an engine)

for those who are interested specifically in the LDNFS Simulator, read the book about it. For those who need some background about simulators and want to know where the LDNFS Simulators stands in the vaste panorama of simulators, read the full article. Thank You for Your attention... .
Manual of the Simulator: Usage and Functioning of the LDNFS Simulator. A complete book divided in 3 parts. Each of them, are linked at the end of this page.
A quick VIDEO showing a typical simulation done with the LDNFS Simulator:


Many computer-programs fall under the category of simulators.

The top 2, most brute categories are: interactive and non-interactive simulators. However, all non-interactive simulators could be made to be interactive, but are left non-interactive for convenience, either to simplify a bit the process of programming, of creating that computer-program, either because the simulation is much slower than real-time, so as to make real-time interactivity useless to implement in them. So, this dinstinction is not really useful for us, as it would be of little use also to further categorize the these kinds of simulators: let's just say that some have 3D, and some have 2D graphical output ; while some output only 2D graphs, some just output numerical or logical values accompanied by some informative text to tell what do the output data mean in the context of the specific simulation being done. An example of non-interactive simulators is electronic circuit simulators ; which in turn, are typical of the industrial world. But also aerodynamics simulators are, which have usually quite formidable 3D graphical output, but are non-interactive... they are also typical of the industrial world. Then there are simulators of various types of optical devices or optical systrems in general. And so on... .
Clearly there would be too much to say about the varius kinds of simulators used in the industrial world, to fit into a short discussion of simulators which can be used as games.

In the context of this article, it's more meaningful in fact, to say that simulators which have a 3D, animated graphical output, fall into 2 main categories: those which can be used as games, and those which can not. Typical examples are:
Flight Simulators ;
Vehicle Simulators ;
Articulated-Body Simulators ;
Lighting and shadow-casting simulators ;
others which I don't know, and which won't be discussed here.

As an example, take for example the job of "simulating" the task of landing on a toruous terrain and the task of choosing where this can be done in a large open environment. For this you can check, for example, the FlightCraft3D: The Return videogame. It still stands as a simulator, but it already explores the frontiers of the very concept of simulation-software: inasmuch it attempts to simulate various facets of the world of flying and landing, something which it clearly can not do well in all the facets of such a wide topic.
This is the case of most multi-disciplinary ( so to speak ) simulators.

A different case is the LDNFS Simualator: since it's an articulated-body simulator, and since articulated-body dynamics is a rather restricted, specific field (as opposed to more multi-disciplinary fields ) it is a classic, hard, rough, palin simulator. As is.
Clearly this notwithstanding, the LDNFS simulator falls in the category of simulators which can very well be used also as gemes.

It can offer the simulation of a typically articulated vehicle, so, we are there: it can be used as a driving game. One can clearly not hit against barriers and walls as the method of generalized coordinates does not contemplate collisions, but as long ans one just drives around on a hilly terrain, it's fine... also smaller jumps are allowed as long as one doesn't go beyond the maximum compression of the ammortizers which hold the vehilce's main body (or main body and various trailer-like sub-vehicles attached to it) in position on the terrain, ready to be driven around.

So... what is the LDNFS simulator, beyond being able to simulate most articulated mechanisms as well as articulated vehicles being acrtually driven aroun on a hilly terrain? Well, we could say that there are plenty of different little stand-alone simulators created with the LDNFS Simulator, and thus it can be identified which this rose of smaller-or-larger computer-programs. But more specificcally, it's a software-module, which allows to implemente in a computer-program, the simualtrion of an articulated-body ; so, it is, also, a software-module which on itslelf is devoid of a specific content. But which allows to put quickly and safely plenty of content realted to articulated-body dynamics, into a specific computer-program.

So, at this point... it's time to welcome You. Hi everibody, and welcome to a very quick preview of some little simulators featuring articulated-body dynamics ; and to the presentation of the simulation procedure behind it, implemented into computer-program with the C programming language... more specifically into a so-called simulation-engine, released now as Open-Source software.
Where engine means that You can implement Your own simulators doing the simulation of almost any articulated-mechanism You like: it's one of the simplest, if not the simplest (to this date), articulated-body simulation software-module ; so it's really easy to use too. A funny and concise, exciting guide-book teaches You how to use it to implement Your own simulators with it.

Simulation of a tricycle with a pending body attached to it with a hinge-joint:
Image unavailable. Image unavailable.

Simulation of a plain tricycle:
Image unavailable. Image unavailable.

The images of these little simulators are part of the set of examples, by means of which I am releasing the simulation-procedure they rely on: the LDNFS articulated-body simulation engine
You can play them straight to see how You like it... the terrain-module shall be changed to a better one soon, so it's not all here ; even if the simulation shall remain the seme, clearly.
PLaying the examples is fine, but the ultimate fact is that there are lots of them, as the software module behind them is extremely easy to configure for creating different, new examples. Let's get to this topic. It's usage and functionig... read on!
Practically, there are no requirements to be able to do new simulator such as these, as the manual teaches it all ; a very basic knowledge of the C programming language is sufficient. Some minimal effort is sufficient to become basic but confindent users ; to become advanced users, the manual and some of the extra material it proposes, should be carefully read.

They can be downloaded from here,
or directly from this site (the above one is, however, updated more often: this is more a backup option in case of possible shortages of the Sourceforge portal), here:

while the screenshots relevant to most of the simulator here published until now, can be downloaded from here:

So, let's go back to the simulators:
one is of a tricycle, with the rotation of its wheels not taken into account, so totalling 9 Degrees of Freedom ;
and the other is of a typical car, 4 wheels all ammortized, with the rotation of the wheels, once again, not taken into account, so totalling 10 Degrees of Freedom. While the third one is a similar tricycle, but with an additional body attached to a point of it throught a universal joint (+ 3 DOFs): a full 3D variant of the classical example which consists of a 2D carriege (though not ammortized) with a pendulum attached to it.

Image unavailable. Image unavailable.

Where by how many Degrees of Freedom (a.k.a.: "DOFs" ) there are in the articulated-body being simulated, the usual fact is intended:
the number of parameters needed to define the configuration of the dynamical system at hand, at a certain instant. With the numbers being simple real, or rational numbers: whichever You prefer ; which in most programming-languages are called floating-point numbers.

All of the above-mentioned little simulators are made with the seme little articulated-body simulation engine (as usually these kinds of softwares are called ).

The LDNFS articulted-body simulator

So. After these preliminaries, however important to convey a correct information of what a simulation-software is, and what a typical simulation-game (or simulation videogame) is, it's now time to come to discuss the particlar articulated-body simulation engine (as usually these kinds of softwares are called ) at the center of this article: the LDNFS Simulator.

It's An articulated-body simulator I am releasing as open-source software. A piece of software and underlaying simulation-algorithm I developed because I wanted to be a truck-driver for long time, and wanted to let others as well, appreciate the gentle harmony of the dynamics of articulated-bodies.
Wishing to contribute making a better tomorrow.

The simulation engine is called Lagrangian Dynamics' New Flavour Simulations. A Piece of software written in the standard C programming language. A simulator whose functioning is entirely based on an enhanced flavour of the Lagrangian Dynamics (sometimes also called method of generalized coordinates): hence the title of the Simulator.

Image unavailable.

Detailed documentation on how to use this simulation engine (or software-module if You prefer calling it so) and how it excactly works, is contained in a book dedicated to this. Originally conceived as a sort of video-tutorial, it has quickly evolved to become a complete book which is not only a sort of user-manual, but a full reference and gradual, easy, and gentle introduction also to the theory at the heart of the LDNFS Simulator: the Lagrangian Dynamics' new, enhanced flavour which stands at it's basis.

Part 1 (out of 3) of the book, in video form, is here:

Part 3 (out of 3) is here.

The other part left, 2/3, instead shall come within reasonable time, in video as well as text form. Thanks for Your patience! ( however, it's not crucial... it's just an extra addition). However, a consistent review of it, is provided at it's beginning.

New little simulators done with this simulation-engine, are coming out more-less constantly. A video of the most recent is here:
While instead a video of one of the earliest examples, is here:

The old video-version of a sort of quick preview, is here: https://youtu.be/CnyZZZgzrrg

For updates visit the homepage ( www.nerdofalgorithms.altervista.org ),
as well as the video-channel it relies on to provide the audio-video part of the material.

Bye, and have a nice day!
This was Simon, (a.k.a.) 'The nerd of Algorithms'.

date of writing: 22 March 2016 ( first drafed at date: 02 October 2015 ) .

P.S.: soon will come also examples which use a new terrain-module which needs no preliminary loading and is overall better than the obsolete one, and also an example with flat ground and one with terrain and segments of roads to drive on.