**4. The architecture of the system**

The software used to create the scenarios is Unity3D that allows the composition of virtual environments starting from basic elements which the scene is composed with. It also takes care of rendering, real-time lighting calculation and user interaction management. The fundamental tools that have been used are the following:


The game objects are the basic elements that make up the scene that must be shown to the user.

The scripts are code files written in C# language that permit some predefined tasks to be executed, like managing the appearance of objects on the displayed area, or the camera movement as soon as a key on the keyboard gets pressed.

The colliders are objects that prevent intersection or collision between the character controlled by the user and other different objects in the scene.

Two consecutive C# scripts are tasked with generating all the necessary shapes and modeling any mathematical function in two or three dimensions:


Generally, we are interested in drawing mathematical functions with a continuous domain and relative range in (Real Number Set); however, this is only an ideal case, since plotting a function through a calculating machine requires simplifying the set of calculations by passing through a discrete space of points. In other words, we need to trace a grid of points that are going to end up defining the level of maximum detail we want to achieve. Also, we must keep in mind that the higher the level of detail, the more calculations the user's device ought to perform to display the object on the screen. A balance must therefore be found between the graphic quality to be obtained and the computational complexity necessary to achieve
