CoppeliaSim offers powerful calculation functionalities, or calculation modules, that are not directly encapsulated in objects (like proximity sensors or vision sensors for instance), but that rather operate on one or several objects.
Calculation modules include:
Some calculation module allow registering calculation objects that are user defined. Calculation objects are different from scene objects, but are indirectly linked to them by operating on them. This means that calculation objects cannot exist by themselves:
If the integrity of a given calculation object is maintained during a copy/paste operation of scene objects, then that calculation object will also automatically be copied. For example, if collision object A is defined by collidable object B and collidable object C (i.e. performs collision detection between object B and object C), and if both objects B and C are duplicated at the same time (in a same copy-paste operation), then collision object A will also be duplicated. This represents a powerful feature allowing to duplicate not only objects or models, but also all their related calculation objects (including all related scripts), so that the full functionality and behavior of an object or model can be maintained.