CoppeliaSim 4.3.0 User Manual - CoppeliaSim 4.3.0 使用者手冊

  • Home
    • Site Map
    • reveal
    • blog
  • welcome
  • userInterface
    • pagesAndViews
    • coordinateDialog
    • positionDialog
    • orientationDialog
    • objectMovement
    • positionOrientationTransformation
    • settings
    • shortcuts
  • scenesAndModels
    • scenes
    • models
    • modelDialog
  • environment
    • environmentPropertiesDialog
    • textureDialog
  • entities
    • collections
    • objects
      • sceneObjectPropertiesDialog
      • commonPropertiesDialog
    • collidableObjects
    • measurableObjects
    • detectableObjects
    • viewableObjects
    • convexHull
    • layerSelectionDialog
      • cameras
      • cameraPropertiesDialog
      • lights
      • lightPropertiesDialog
      • shapes
      • shapeReferenceFrames
      • primitiveShapes
      • convexDecomposition
      • shapeProperties
      • shapeDynamicsProperties
      • shapeDynamicEngineProperties
      • geometryDialog
      • shapeEditModes
      • triangleEditMode
      • vertexEditMode
      • edgeEditMode
      • groupedShapeEditMode
      • joints
      • jointModes
      • jointProperties
      • jointDynamicsProperties
      • jointDynamicEngineProperties
      • dummies
      • dummyPropertiesDialog
      • graphs
      • graphPropertiesDialog
      • proximitySensors
      • proximitySensorDescription
      • proximitySensorPropertiesDialog
      • proximitySensorVolumeDialog
      • proximitySensorDetectionParameterDialog
      • visionSensors
      • visionSensorDescription
      • visionSensorPropertiesDialog
      • forceSensors
      • forceSensorPropertiesDialog
      • octrees
      • octreePropertiesDialog
      • pointClouds
      • pointCloudPropertiesDialog
    • paths
  • functionality
    • geometricCalculations
    • collisionDetection
    • distanceCalculation
      • geometricPlugin
      • simGeom API
      • coppeliaGeometricRoutines
      • CoppeliaGeometricRoutinesAPI
    • IGLPluginAPIreference
    • kinematics
    • basicsOnIkGroupsAndIkElements
    • solvingIkAndFk
      • kinematicsPlugin
      • simIKAPI
      • coppeliaKinematicsRoutines
      • CoppeliaKinematicsRoutinesAPI
    • dynamicsModule
    • designingDynamicSimulations
      • dynamicsDialog
      • dynamicsEngineDialog
    • dataVisualizationAndOutput
    • externalFrontEnd
    • dataTransformation
    • meansOfCommunication
      • remoteApiOverview
      • zmqRemoteApiOverview
      • wsRemoteApiOverview
      • rosInterfaces
      • rosInterf
      • ROSPluginAPIreference
      • ros2Interface
      • ROS2PluginAPIreference
    • ZMQPluginAPIreference
    • WSPluginAPIreference
    • pathsAndTrajectories
    • pathAndMotionPlanningModules
    • OMPLPluginAPIreference
    • syntheticVision
    • IMPluginAPIreference
    • simVisionAPI
    • customUIPlugin
    • UIPluginAPIreference
    • simUI-widgets
    • QMLPluginAPIreference
    • importExport
    • xmlFormat
      • urdfPlugin
      • APIFunctions
      • sdfPlugin
      • SDFPluginAPIreference
    • aviRecorder
    • AssimpPluginAPIreference
    • GLTFPluginAPIreference
      • commandLine
      • LuaCmdPluginAPIreference
      • miscellaneousFunctionality
      • SurfRecPluginAPIreference
      • ICPPluginAPIreference
      • SubprocessPluginAPIreference
  • writingCode
    • scripts
      • embeddedScripts
      • simulationScripts
      • mainScript
      • childScripts
      • customizationScripts
      • scriptProperties
      • scriptEditor
    • addOns
    • sandboxScript
    • scriptExecution
    • threadedAndNonThreadedCode
      • callbackFunctions
      • dynCallbackFunctions
      • jointCallbackFunctions
      • contactCallbackFunction
      • visionCallbackFunctions
      • triggerCallbackFunctions
      • userConfigCallbackFunctions
    • luaPythonDifferences
    • luaCrashCourse
    • plugins
    • mainClientApplication
    • accessingSceneObjects
    • explicitHandling
    • apisOverview
      • apiFunctions
      • apiConstants
      • objectParameterIDs
  • simulation
    • simulationPropertiesDialog
  • tutorials
    • bubbleRobTutorial
    • buildingAModelTutorial
    • lineFollowingBubbleRobTutorial
    • inverseKinematicsTutorial
    • externalControllerTutorial
    • pluginTutorial
    • robotLanguageIntegrationTutorial
    • rosTutorial
      • ros1Tutorial
      • ros2Tutorial
    • compilingCoppeliaSim
Next >> userInterface

welcome

The user manual is included in the downloadable CoppeliaSim packages

CoppeliaSim User Manual

Version 4.3


The robotics simulator CoppeliaSim, with integrated development environment, is based on a distributed control architecture: each object/model can be individually controlled via an embedded script, a plugin, ROS / ROS2 nodes, remote API clients, or a custom solution. This makes CoppeliaSim very versatile and ideal for multi-robot applications. Controllers can be written in C/C++, Python, Java, Lua, Matlab or Octave.

Following are just a few of CoppeliaSim's applications:

  • Simulation of factory automation systems
  • Remote monitoring
  • Hardware control
  • Fast prototyping and verification
  • Safety monitoring
  • Fast algorithm development
  • Robotics related education
  • Product presentation
  • CoppeliaSim can be used as a stand-alone application or can easily be embedded into a main client application: its small footprint and elaborate API makes CoppeliaSim an ideal candidate to embed into higher-level applications. The Lua or Python script interpreter makes CoppeliaSim an extremely versatile application, leaving the freedom to the user to combine the low/high-level functionalities to obtain new high-level functionalities.

    A good way to get a quick start with CoppeliaSim is to have a look at the tutorial section first.

    Refer also to CoppeliaSim's overview description in other languages: English, Deutsch (German), Français (French), Italiano (Italian), Español (Spanish), Türkçe (Turkish), Português (Portugues), 日本語 (Japanese), 한국어 (Korean), 简体中文(simplified Chinese), 繁体中文(traditional Chinese).



    coppeliaSimFeatures

    5 Programming Approaches Powerful APIs, 7 languages Remote API
    Simulator and simulations are fully customizable, with 5 programming approaches that are mutually compatible and that can even work hand-in-hand. 6 supported programming languages.
    Regular API: Python, Lua and C/C++
    Remote API: C/C++, Python, Java, JavaScript, Matlab & Octave
    ROS interfaces: publishers, subscribers & service calls. Support all standard messages, extendable.
    Control a simulation or the simulator itself remotely (e.g. from a real robot or another PC)
    Dynamics/Physics Inverse/Forward Kinematics Dynamic Particles
    4 physics engines (Bullet Physics, ODE, Vortex Studio and Newton Dynamics) for fast and customizable dynamics calculations, to simulate real-world physics and object interactions (collision response, grasping, etc.)
    Inverse/forward kinematics calculations for any type of mechanism (branched, closed, redundant, containing nested loops, etc.). An embeddable version of the IK/FK algorithms is available (i.e. can run on your robot).
    CoppeliaSim supports customizable particles that can be used to simulate air or water jets, jet engines, propellers, etc.
    Collision Detection Minimum Distance Calculation Cross-Platform & Portable
    Fast interference checking between any mesh, OC tree, point cloud, or collection of those.
    Fast and exact minimum distance calculation between any mesh (convex, concave, open, closed), OC tree, point cloud, or collection of those.
    CoppeliaSim is cross-platform, and allows the creation of portable, scalable and easy maintainable content: a single portable file can contain a fully functional model (or scene), including control code.
    Proximity Sensor Simulation Vision Sensor Simulation Building Block Concept
    Powerful and realistic proximity sensor simulation (exact min. distance calculation within a customizable detection volume). Much more continuous operation than with discrete ray sensors. Operates on meshes, OC trees and point clouds
    Simulation of vision sensors with many possibilities for image processing, fully customizable and extendable (e.g. via plugin)
    Anything - from sensors or actuators, to whole robotic systems - can be built within CoppeliaSim by combining basic objects and linking various functionality via embedded scripts. Every scene object can have its own embedded script!
    Path/Motion Planning Data Recording and Visualization Custom User Interfaces
    Path planning / motion planning is supported in a very flexible way via the OMPL library wrapped in a plugin for CoppeliaSim
    A large variety of recordable data streams (including user-defined) can display time-graphs, or can be combined with each other to form x/y-graphs, or 3D curves
    Unlimited number of fully customizable user interface elements
    Integrated Edit Modes Easy Data Import/Export RRS Interface & Motion Library
    Special mesh edit modes are supported (including a semi-automatic primitive shape extraction method, convex decomposition, mesh decimation, etc.)
    Following file formats are supported (also when called through the API): URDF, COLLADA, DXF, 3DS, OBJ, STL (ASCII & binary)
    The RRS-1 interface specifications are fully implemented, and the Reflexxes Motion Library and Ruckig Online Trajectory Generator are fully supported.
    Full-Featured Scene Hierarchy Convenient Model Browser Full Interaction
    The scene composition is intuitively visualized in a scene hierarchy view, indicating object aliases, types, associated control scripts, loop closures, selection and visibility states, warnings, etc.
    The integrated model browser supports drag-and-drop operations (also during simulation!) for convenient scene composition. The available model library, updated at each release, can be easily extended by the user
    Full interaction also during simulations: models, together with their associated behavior (i.e. embedded scripts) can be shifted, rotated, copy/pasted, scaled, erased, etc. without having to adjust any code
    Free Educational License Free Player Version Many More features
    Educational entities (hobbyists, students, teachers, professors, schools and Universities) can use CoppeliaSim Edu for free. The source code of all elements is available. Refer to the licensing page for details
    A free CoppeliaSim Player version is available, and allows running and interacting with CoppeliaSim simulations
    e.g. three.js browser-based viewer, multilevel undo/redo, movie recorder, simulation of paint or welding seams, OC trees, point clouds, exhaustive documentation, etc.

     

    versionInfo

    CoppeliaSim version history

    CoppeliaSim versions are indicated as follows:

    Version X.Y.Z (rev. W)

    Where:

    X identifies a special release (once every couple of years)
    Y identifies a major release
    Z identifies a minor release
    W identifies a revision number (0 is usually for a beta version, 1 for a first regular release)

    Version history:

    CoppeliaSim V4.4.0 (not yet released)

  • Fixed several bugs. Thanks to Pranav A. Bhounsule, Amirhossein Afkhami Ardekani, Roman Horshkov, Volker Kühn, Artem Shishkin and Davide Scorza for noticing them or helping to resolve them
  • sim.ruckigPos, sim.ruckigVel, sim.moveToConfig and sim.moveToPose can now also be used for non-symmetric velocity/acceleration profiles, via the sim.ruckig_minvel and sim.ruckig_minaccel flags
  • The ZeroMQ remote API is now supported in following languages: Python, c++, Matlab, Octave, Lua and Java
  • Capsule primitives are now also supported
  • Kinematic joints can now also be directly driven via sim.setJointTargetPosition and sim.setJointTargetVelocity, using maximum velocity, acceleration and jerk constraints, for a specific motion profile
  • Dynamic joints now have distinct and more clearly defined control modes: free, force/torque, velocity, position, spring and custom.
  • Added sim.broadcastMsg, which allows to easily broadcast a message to all scripts
  • Added a point sampler add-on, that allows to extract 3D poisitions and normal vectors from the mouse cursor
  • Added a scene demonstrating texture modification to simulate a vehicle's trace: scenes/mobileRobotVisualTraces.ttt
  • Added a model of the ABB YuMi: Models/robots/non-mobile/ABB YuMi.ttm
  • Added a model of the Mirobot: Models/robots/non-mobile/Mirobot.ttm
  • Added a model of a generic tray: Models/equipment/generic tray.ttm
  • Added a model of a generic external wall: Models/infrastructure/walls/external wall.ttm


  • CoppeliaSim V4.3.0 (January 27th 2022)

  • Fixed several bugs. Thanks to Nathan Kocherhans, René Simon, Yongdong Wang, Andrés Faíña, Eric Rohmer, Davide Scorza, Jovan Sumarac, Luigi Ascione, Cameron Kabacinski, Rui Li, Patrick Grüner, Andrés Faíña, Michal Mareš, Kat Styles Wood, David Paulius and Alex Wuqi Zhang for noticing them or helping to resolve them.
  • Python is now also supported next to Lua, as a programming language for CoppeliaSim scripts. Both operate in almost the same fashion, except for small differences. See also the example scenes scenes/simplePythonExample.ttt, scenes/controlTypeExamples/controlledViaScript.ttt and scenes/trajectoryAndMotion/ruckigOnlineTrajectoryGeneratorExample-pythonAndLua.ttt
  • Objects are now identified via a path and an alias, instead of a unique object name, as was the case in previous versions: this allows for a safer and more flexible object access, by specifying absolute or relative paths, e.g. sim.getObject("./descendentObject"). This also means that object aliases (i.e. formerly names), do not need to be unique anymore. See also sim.getObjectAlias and sim.setObjectAlias.
  • Added a plugin wrapping the Ruckig Online Trajectory Generation library, courtesy of Lars Berscheid. It acts as a drop-in replacement for the Reflexxes Motion Library type 4, and thus also offers the jerk limitation functionality. Functionality is available via sim.ruckigPos, sim.ruckigVel, sim.ruckigStep and sim.ruckigRemove.
  • Added a WebSocket interface plugin.
  • Added a remote API based on ZeroMQ, currently however only fully implemented in Python and C++. Compared to the legacy remote API, it is very easy to use, lightweight, and supports the exact same API functions that are availabe via scripts: this includes all regular API functions (i.e. sim.* -type functions), but also all API functions provided by plugins (e.g. simOMPL.*, simUI.*, simIK.*, etc.)
  • Added several new callback functions: sysCall_event and sysCall_ext. sysCall_event in particular allows to keep track of most changes happening in a CoppeliaSim scene, and allows to easily implement external renderers, etc. See also next item.
  • Added a web-browser based front-end.
  • Added sim.registerScriptFuncHook, which allows to set up function hooks to be executed before or after a specific function, namely also (system) callback functions.
  • Object's renderable flags are now ignored by vision sensors: instead, vision sensors will render object in the same way as do cameras, by only taking into account their visibility state: this ends some confusion, but can lead in some situations to a different behaviour and result. Flexibility is however still guaranteed, with the ability to use a collection as renderable entity, which can override object's visibility states.
  • Added an add-on that allows to record animations from any selected object/model: Animation capture
  • Added sim.generateTextShape and an add-on that allows to generate and edit 3D text: 3D text generator. The add-on is courtesy of Mechatronics Ninja
  • Added an add-on that can import floor-plan images to 3D shapes: Floor plan importer.
  • Added an add-on that allows to quickly check for self-collisions, collisions with the environment, or collisions between two entities: Collision check.
  • Added an add-on that allows to quickly measure distances between an entity and the environment, or between two entities: Distance check.
  • Added an URDF export add-on: URDF exporter.
  • Added a model of the Franka Emika gripper, courtesy of Alexander Oliva
  • Added sim.moduleEntry that allows to handle menu entries in the Modules tab. When selected, the corresponding script will have its sysCall_moduleEntry callback function triggered.
  • Added sim.getShapeBB and sim.setShapeBB to be able to scale shapes more conveniently
  • Added the possibility to transform/distort vision sensor images via a function using pixel remapping: simVision.distort. See also the related demo scene in scenes/vision/imageProcessingDemo2.ttt
  • Added an example model of a Stewart platform: Models/robots/non-mobile/Stewart platform.ttm
  • Added an example scene of IK and obstacle avoidance: Scenes/kinematics/obstacleAvoidanceAndIk.ttt
  • Added an example scene of a mobile robot doing path planning: Scenes/pathPlanning/mobileRobotPathPlanning.ttt
  • Added an scene that illustrate's the relationship of CoppeliaSim's Euler angles convention (alpha-beta-gamma) and the yaw-pitch-roll Euler angles convention: Scenes/eulerAngles.ttt
  • Added an example scene illustrating IK movement via the remote API: scenes/messaging/ikMovementViaRemoteApi.ttt. Related Python scripts can be found in programming/zmqRemoteApi/clients/python/ and in programming/remoteApiBindings/python/python/
  • Added a simple button-click action tool: Models/tools/button action tool.ttm
  • Added a Qt QML plugin.
  • Added an IGL plugin, for boolean operations on shapes.
  • Added a subprocess plugin, for launching and handling subprocesses.


  • CoppeliaSim V4.2.0 (April 6th 2021)

  • Fixed several bugs. Thanks to Adrian Schoisengeier, Mathias Thor, Francisco Marin, Nikita Aigner, Charles Han, Shai Levy, Bobovsky Zdenko, Salvatore Sessa, Jakob Ambsdorf, Hayato Amaike, and Kevin Thomas for noticing them or helping to resolve them.
  • All script types now support threaded or non-threaded operation. Threaded operation is handled via coroutines that are preemptively interrupted by CoppeliaSim. Except for its code, there is no difference anymore between a threaded and non-threaded script. Old threaded child scripts are still supported for backward compatibility, but CoppeliaSim will try to automatically convert them. If this is not desired, adjust value keepOldThreadedScripts in system/usrset.txt.
  • Switched from Lua 5.1 to Lua 5.3. Backward compatibility should normally be maintained, except maybe for old Lua modules you might be using. If this is the case, update those module to their Lua 5.3 counterparts. Read also about the language incompatibilities introduced in Lua 5.2, and the language incompatibilities introduced in Lua 5.3. Additional backward compatibility code can be communicated to us and added to lua/sim.lua.
  • The ROS2 interface is now also supported on Windows.
  • Since this release, static IK groups (i.e. created via the GUI) are deprecated in favor of dynamically created IK groups, which offer much more flexibility. Read more about the kinematics functionality here.
  • Added the convenience functions simIK.addIkElementFromScene, simIK.applyIkEnvironmentToScene, simIK.applySceneToIkEnvironment, allowing to quickly generate an IK element from a kinematic chain in the scene, and to perform/apply calculations to it. All scenes have been adjusted to use above convenience functions. As simple example can be seen in scenes/kinematics/simpleIkGroupWithSimpleIkElement-undamped.ttt
  • Added simIK.duplicateEnvironment: useful when operating on an IK environment while leaving the original environment unchanged. Also added simIK.save.
  • Kinematic example scenes in folder kinematics have been reworked and simplified.
  • Added simIK.generatePath and a related demo scene: scenes/kinematics/ikPathGeneration.ttt
  • Rewrote the inverse kinematics tutorial.
  • Rewrote and reorganized large parts of the user manual.
  • Since this release, static collections (i.e. created via the GUI) are deprecated in favor of dynamically created collections, with new API functions. This results in much more flexibility. Read more about collections here.
  • Since this release, static collision objects (i.e. created via the GUI) are deprecated in favor of sim.checkCollision. Read more about collision detection here.
  • Since this release, static distance objects (i.e. created via the GUI) are deprecated in favor of sim.checkDistance. Read more about distance calculation here.
  • Since this release, graph streams and curves created via the GUI are deprecated in favor of streams/curves created and manipulated via new API functions. This allows a much more flexible and precise control of graphs. Read more about graphs here.
  • Since this release, path objects are implemented in a generic manner, via a pseudo path objects. This allows much more flexibility. Read more about paths here, and have a look at the simple example scene scenes/movingAlongAPath.ttt.
  • Added a CoppeliaSim linear algebra library.
  • Added a ZeroMQ interface plugin.
  • Added new conveyor models, allowing to easily create conveyor systems of any size/shape. See models in Models/equipment/conveyors.
  • sim.getShapeMassAndInertia and sim.setShapeMassAndInertia are deprecated, and replaced by sim.getShapeMass, sim.setShapeMass, sim.getShapeInertia and sim.setShapeInertia.
  • Added a new demo scene illustrating smooth movement profiles in forward and inverse kinematics mode: kinematics/smoothMovementsInFkAndIk.ttt
  • Updated the OMPL plugin to use the OMPL library version 1.5.0
  • Added simIK.getAlternateConfigs and sim.getAlternateConfigs, to be used in conjunction with simIK.getConfigForTipPose, when dealing with manipulators that have joint ranges larger than 360 degrees, to generate alternative configurations.
  • Added several path-related API functions, including sim.generateTimeOptimalTrajectory that allows to generate time optimal trajectories (i.e. trajectories that respect velocity and acceleration constraints), based on the TOPP-RA library. A demo scene related to that can be found in scenes/trajectoryAndMotion/pathToTrajectory.ttt.
  • Added a SVG widget for the CustomUI plugin. Content can be loaded from file, from XML string, or embedded in the UI XML.
  • sim.rmlMoveToJointPositions and sim.rmlMoveToPosition are deprecated in favor of sim.moveToConfig and sim.moveToPose, which feature a callback mechanism for maximum flexibility.
  • Added following API functions: sim.isDynamicallyEnabled, sim.getJointDependency, sim.changeEntityColor and sim.restoreEntityColor.
  • Following Docker image is available for running CoppeliaSim in a container: docker-image-coppeliasim
  • The default scene will now pause simulation when a script error is raised.
  • Added an additional dynamics configuration mode that performs smaller dynamics steps and/or does more calculation iterations. Went from [very accurate, accurate (default), fast, very fast, custom] to: [very accurate, accurate, balanced (default), fast, very fast, custom].
  • The Windows installer/uninstaller can now silently operate by invoking it with following command-line arguments: /silent /hide /[silent]=true


  • CoppeliaSim V4.1.0 (July 21st 2020)

  • Fixed several bugs. Thanks to Jakub Turaj, Rieky Barady, Jian Ye, Jaime Boal, Mathias Thor, Pável Axel Mc Campos Peña, Filipe Rocha, Patrick Gruener, Thomas Wilmotte, Lorenzo Romanini, Pablo Bustos, Sonny Tarbouriech, Johan Relefors, Adrian Schoisengeier, Arturs Paugurs, Wei Wei, David Page, Ayush Patel, Aleksander Sil and Cameron Kabacinski for noticing them or helping to resolve them.
  • Ubuntu20.04 support
  • Switched to Qt5.15.0 and VC2019 on Windows.
  • CoppeliaSim's kinematics functionality (i.e. forward and inverse kinematics) is now also available via Lua scripting: this means that instead of creating and handling kinematics tasks via the GUI, one can also entirely create and handle them programmatically in a very flexible manner. Two example scenes illustrate this: scenes/kinematics/8-computingJointAnglesForRandomPoses.ttt and scenes/kinematics/9-programmaticallySettingUpIk.ttt
  • CoppeliaSim's collision detection and minimum distance calculation functionality on shapes, OC-Trees and point-clouds is now also available via Lua scripting: you can now also perform the same kind of calculations without the need of creating any scene object or modifying the scene content. This is illustrated in following example scene: scenes/sceneObjectIndependentGeometricCalculationExample.ttt
  • ROS2 Interface plugin for ROS2 Foxy Fitzroy, supports topics, services, actions, params, TF2 broadcast and image transport.
  • GLTF plugin can export static scene and animations in the GLTF 2.0 format. The functionality is available via the add-on menu, or via related API functions.
  • URL Drop plugin allows loading scene from remote locations via drag and drop (e.g. drop an URL from a browser's window).
  • The verbosity level (console, status bar and simple dialogs) can now be adjusted from the command line with the -v , -w and -x arguments. To output messages, plugins should now use simAddLog and scripts sim.addLog.
  • An optional Lua script string may be executed via the command line with the -c argument.
  • Added an example scene illustrating simple motor controllers: scenes/motorControllerExamples.ttt
  • Added an example scene illustrating how to apply inverse kinematics to dynamically enabled models/manipulators: scenes/kinematics/10-applyingIkToDynamicallyEnabledModels.ttt
  • Added an example scene illustrating simple usage of the Reflexxes Motion Library: scenes/reflexxesMotionLibraryExamples.ttt
  • Added sim.setJointTargetForce and sim.getJointTargetForce. sim.setJointForce is now deprecated.
  • Added sim.yawPitchRollToAlphaBetaGamma and sim.alphaBetaGammaToYawPitchRoll, to convert between those two different Euler angle representations.
  • The true headless CoppeliaSim library is also shipped (i.e. coppeliaSimLibHeadless.dll or similar). This is in addition to the headless mode supported via the -h command line option, which simply suppresses all GUI elements of the regular CoppeliaSim library.
  • Fixed a few shape export problems (i.e. normals and/or textures)
  • A Simulink-CoppeliaSim communication plugin is now available, courtesy of Diego Daniel Santiago.
  • Many CoppeliaSim video tutorials courtesy of Leopoldo Armesto.


  • CoppeliaSim V4.0.0 (November 26th 2019)

  • We discontinued development of V-REP. Instead, we focus our efforts on CoppeliaSim. CoppeliaSim is 100% compatible with V-REP (i.e. it is a fork of the V-REP project). It runs faster and has more features than V-REP. Of course will Coppelia Robotics handle V-REP support and licenses in a perfectly interchangeable manner with CoppeliaSim support and licenses.
  • Fixed several bugs. Thanks to Mark Hartenstein, Stephen James, Simon Birrell, Sahil Sharma, Adrian Schoisengeier, Rémi Lux, Kilian Freitag, Maël Hörz and Eric Rohmer for noticing them or helping to resolve them.
  • Completely rewrote the calculation routines handling collision detections, minimum distance calculations, proximity sensor simulations, OC trees and point clouds. A significant speed increase could be achieved. The routines are now grouped in the geometric plugin. The core of the geometric plugin are the Coppelia geometric routines, available for stand-alone applications.
  • You can now import and export XML files.
  • You can now from within the script editor open the API documentation for the function/constant under the mouse pointer, via the context menu.
  • Switched to Qt5.12.5 on all 3 platforms.
  • Added support for ROS 2 via ROS2Interface. See the compiledRosPlugins folder, and the ROS2 Interface source code. Have also a look at ROS 2 API and the ROS 2 tutorial.
  • Vision sensor filters are no longer supported. They are replaced by vision callback functions, which allow for a much more flexible operation. Old scenes are automatically updated. A demo scene illustrating the new way to handle image processing was added: imageProcessingDemo.ttt.
  • Added trigger callback functions for vision sensors, proximity sensors, and force/torque sensors.
  • Added user config callback functions, which allow implementing custom behaviour upon double-clicking user parameter icons.
  • Added an add-on for exporting scene content as glTF data: simAddOnGLTFExporter.lua
  • The OpenGL3 renderer can now also be selected as renderer for cameras, during simulation.
  • Added the model of the Franka Emik Panda robot, courtesy of Alexander Oliva, Marco Cognetti and Claudio Gaz.
  • CoppeliaSim simulations can be exported to Blender via Boris Bogaerts' CoppeliaSim-Blender-Tools.
  • RLBench is an ambitious large-scale benchmark and learning environment designed to facilitate research in a number of vision-guided manipulation research areas, including: reinforcement learning, imitation learning, multi-task learning, geometric computer vision, and in particular, few-shot learning. RLBench, built around PyRep and CoppeliaSim, is created by Stephen James.
  • Added a model of the Niryo One robot.


  • V-REP V3.6.2 (June 26th 2019)

  • Fixed several bugs. Thanks to Jacob Smith, Mohsen Moradi Dalvand, Simon Birrell, Mathias Thor, Jedrzej Orbik and Liu Dong for noticing them or helping to resolve them.
  • PyRep, built on top of V-REP and courtesy of Stephen James (Imperial College London), is a Python toolkit for robot learning research. Compared to the remote client approach, it displays great speed improvements since remote procedure calls or synchronization are not required. This makes PyRep the perfect solution for learning algorithms in the areas of reinforcement learning, imitation learning, state estimation, mapping, and computer vision.
  • V-REP now also offers shadows support with vision sensors, when rendering via the OpenGL3 renderer plugin, courtesy of Stephen James (Imperial College London). See also the updated rendererDemo.ttt scene.
  • The sandbox script is now loaded from system/sndbxscpt.txt at start-up, and can contain similar callback functions as add-ons.
  • Named command-line arguments are now supported via the -G option. Those can be queried (e.g. by plugins) via sim.getNamedStringParam.


  • V-REP V3.6.1 (March 15th 2019)

  • Fixed several bugs. Thanks to Julian Mayer and Boris Bogaerts for noticing them or helping to resolve them.
  • Switched to Qt5.12.1 on all 3 platforms
  • Added API functions simApplyTexture, sim.setJointDependency and sim.getStackTraceback.
  • The shape import/export functionality is now handled by a V-REP Plugin (simExtAssimp), based on the Assimp library. See here for the new API functions.
  • URDF and SDF files are now loaded with textures (if present)


  • V-REP V3.6.0 (February 15th 2019)

  • Fixed several bugs. Thanks to Leon Masopust, Michael Tong, Zhengxing Yang, Lenka Pitonakova, Thomas Gurriet, Hervé Frezza-Buet, Justus Rijke, Stefan Müller, Julien Lechalupe, Tristan Gahler, Robert Peck, William Jones, Benjamin Erdemann, Ulrich Viereck, Joachim Haensel and Justus Rijke for noticing them or helping to resolve them.
  • Script execution/calling order has been adjusted, for a more consistent and overall logical behaviour. This may have an impact on how a simulation runs in certain situations.
  • Dynamics callback functions have been implemented and are supported in child scripts and customization scripts.
  • Added a system callback function for customization scripts and add-ons that allows, during simulation, to control the execution of the main script: sysCall_beforeMainScript. This is useful to easily implement step-by-step simulation, or to easily synchronize the simulation with an external application.
  • Added a simple script debug functionality that allows to monitor function calls and watching variables.
  • The Lua commander now has dynamic variable completion, history, explicitely prints any variable, etc. Type help() for details.
  • Added following API function: sim.getPersistentDataTags.
  • The Open Mesh plugin for V-REP now uses the latest OpenMesh library (V6.3) on all 3 platforms
  • Added a MessagePack module for Lua: lua-MessagePack, courtesy of Francois Perrad.
  • Added a MessagePack encoder/decoder for C/C++: msgpack-c, courtesy of Takatoshi Kondo and several others.
  • Added a MessagePack encoder/decoder for Matlab: matlab-msgpack, courtesy of Bastian Bechtold.
  • Added a MessagePack encoder/decoder for Java: msgpack-java, courtesy of Sadayuki Furuhashi and several others.
  • Added a CBOR encoder/decoder for Lua: Lua-CBOR, courtesy of Kim Alvefur.
  • Added sim.getRandom, math.random2 and math.randomseed2 in order to provide individual random number generators for each script (math.random and math.randomseed share the same generator, independent of which script is calling)
  • The script editor functionality is now provided via a plugin: simExtCodeEditor. It allows to easily search/replace, do/undo, jump to specific functions, restart a script, offers non-modal customization script edition, etc. Code included via the require directive can automatically be opened and modified via the popup menu. You can temporarily revert to the old script editor functionality by adjusting variable useOldCodeEditor in file system/usrset.txt.
  • Added sim.textEditorOpen, sim.textEditorClose, sim.textEditorShow and sim.textEditorGetInfo
  • A VR interface for V-REP was developed by Boris Bogaerts. It can visualize any V-REP scene in steamVR (openVR) compatible VR devices and return user manipulations to V-REP. Installer files are available here (no compilation required, windows only). Instructions on how to use the interface are provided here.
  • A ROS-enabled e-puck, courtesy of Andrei Florea and Catalin Buiu, was added to the model library. More details can be found here.


  • V-REP V3.5.0 (February 6th 2018)

  • Fixed several bugs. Thanks to Steffen Hemer, Fangyi Zhang, virgile Daugé, Riccardo Spica, Filipe Rocha, Jacob Huesman, Matthew Veres, Robert Lang and Florian Golemo for noticing them or helping to resolve them.
  • Switched to Qt 5.9.0 LTS on all platforms.
  • From within a script, print() now prints to the status bar, instead of the console. This can be reverted with print=printToConsole. printf() is now also supported. Both, print and printf will now also print the content of tables.
  • Added a Lua commander plugin (read-eval-print loop), that adds a text input to the V-REP status bar, which allows entering and executing Lua code on the fly, like in a terminal. The code can be run in the sandbox script, or any other active script in V-REP
  • Moved all the source code items related to V-REP to github.
  • Switched to a cleaner way of calling script code, by using predefined functions (e.g. sysCall_init, sysCall_actuation, etc. Scripts should now contain nothing else than functions anymore. The old way of calling scripts is however still supported for the sake of backward compatibility (but make sure not to mix both methods).
  • New joint callback functions have been implemented and are supported in child scripts and customization scripts. The old joint control callback script functionality should not be used anymore and is not accessible anymore via the GUI, but is still operational (you can temporarily make it accessible again via enableOldJointCallbackScriptEdition in system/usrset.txt)
  • A new contact callback function has been implemented and is supported in child scripts and customization script. The old contact callback script functionality should not be used anymore and is not accessible anymore via the GUI, but is still operational (you can temporarily make it accessible again via enableOldCustomContactHandlingEdition in system/usrset.txt)
  • New widgets and API functions were added to the custom UI.
  • Updated the content of v-repNotepad++.zip, which contains all V-REP-related calltips and syntax highlighting keywords for Notepad++.
  • Added sim.getShapeViz, that allows to retrieve a shape's mesh and texture information
  • Added a tool that allows to step through a simulation by triggering each individual simulation step. Can also be used in replacement of the remote API or ROS synchronous mode. The tool is located in Models/tools/simulation stepper tool.ttm.
  • Added a vision sensor model that extracts 3D positions from blob detections: Models/components/sensors/Blob to 3D position.ttm.
  • Added a plugin that wraps the LibICP (Library for Iterative Closest Point Matching, by Andreas Geiger)
  • Added a plugin that wraps the OpenCV library, offering basic image processing and drawing functionality
  • Broke compatibility of the simExtSurfaceReconstruction_reconstruct API function, which was replaced with simSurfRec.reconstruct_scale_space.
  • Added support for shared memory communication in the legacy emote API. The code is courtesy of Benjamin Navarro. By specifying a negative port number, shared memory will be used instead of socket communication.
  • Added following API functions: sim.executeScriptString, sim.getApiFunc, sim.getApiInfo, sim.setModuleInfo and sim.getModuleInfo.
  • A Lanelet plugin for V-REP was developed by Cándido Otero, available here.
  • Modern Robotics: Mechanics, Planning, and Control, a new textbook by Prof. Kevin M. Lynch and Prof. Frank C. Park is available for free download here, and also available for purchase as hardback copy. Several V-REP examples and scenes are available here.


  • V-REP V3.4.0 (April 6th 2017)

  • Fixed several bugs. Thanks to Sven Schweigler, Nicola Battilani, Mark Edmonds, Benno Timmermann, Cándido Otero Moreira, Graeme Neff Wilson, Justin Yim, Allen Zhu, Leo Koppel, Ravi Prakash Joshi, Sina Radmard, Sai Vemprala, James Barger, Gonzalo Casas, Metehan Doyran, Arif Rahman and Jason Cachrane for noticing them or helping to resolve them.
  • For the Windows version of V-REP, switched to Qt 5.6.2, MSVC2015 and 64bit. Make sure to desinstall previous V-REP versions explicitely in folders program files (x86)/V-REP3/V-REP_PRO, program files (x86)/V-REP3/V-REP_PRO_EDU and program files (x86)/V-REP3/V-REP_PLAYER: execute V-REP_*_Setup_*.exe in those folders. Then remove folder program files (x86)/V-REP3. Prior to that you should backup an existing license key.
  • The Vortex plugin is now based in the free version of the Vortex engine: Vortex Studio. The user will however have to download/install Vortex Studio, and register with CM Labs, in order to enable the vortex plugin for V-REP.
  • The Vortex plugin now has the multithreading option turned off by default, since this provides better stability and faster simulation speeds for typical V-REP scenes. This can however still be turned on in the dynamics engines general properties.
  • Reworked the position dialog and the orientation dialog.
  • Added various API functions: sim.transformBuffer.
  • Added a reconfigurable model of the Ragnar robot: Models/robots/non-mobile/ragnar.brm
  • Added a new command line option allowing to disable specific GUI items.
  • Material properties (used by the physics engines) are not shared among shapes anymore, since this lead to confusions and apparently strange behaviours, and material pollution. Now, every shape has its own set of material properties. Material properties can be copied from another shape, or set to a predefined type via sim.setShapeMaterial.
  • Custom UIs can now display plots, be modal, etc. A few bugs have also been fixed.
  • 2D visualization of newly added graph objects is now based on the custom UI plot functionality.
  • Added following API functions to the ROS Interface: simROS.getTime, simROS.hasParam, simROS.searchParam, simROS.deleteParam, simROS.getParamBool, simROS.setParamBool, simROS.getParamInt, simROS.setParamInt, simROS.getParamDouble, simROS.setParamDouble, simROS.getParamString, simROS.setParamString.
  • Added an improved version of the playback tool: Models/tools/playback tool.ttm: it operates faster, requires less memory, and uses the custom UI plugin.
  • Added a tool for viewing custom data blocks attached to objects or a scene: Models/tools/custom data block reader.ttm.
  • Added an API function, based on the CGAL library, that allows to extract a shape from a point cloud: simSurfRec.reconstruct_scale_space. A model using that function is available here: Models/tools/surface reconstruction.ttm
  • Added a model allowing to import a point cloud from a *.xyz file format: Models/tools/point cloud importer.ttm
  • Added an option to record the desktop, including overlapping dialogs, instead of only the simulation window in the video recorder.
  • The Reflexxes Motion Library type 4 plugin (RML4 plugin) is no longer distributed. Instead, a RML2 plugin is distributed. This means that jerk limitation is no longer supported. The former RML4 plugin is however still functional (i.e. simExtRML4.dll/libsimExtRML4.so/libsimExtRML4.dylib): simply replace or place it alongside the RML2 plugin in the V-REP main folder.
  • The OpenGl-based custom UI edition capability was removed, since that functionality is not as flexible and elegant as the Qt-based custom UIs. OpenGl-based custom UIs will however still be functional, and you can enable edition capability again with variable enableOpenGlBasedCustomUiEditor in file system/usrset.txt.
  • Added a simulation model of the UR3 robot: Models/robots/non-mobile/UR3.ttm.
  • CoppeliaSim Edu / V-REP PRO EDU can now read scene and model files from XReality. CoppeliaSim Pro / V-REP PRO can now read/write scene and model files from/for XReality.
  • Added following two API functions: sim.setReferencedHandles and sim.getReferencedHandles.
  • Added a model of Marty the Robot (in Models/robots/mobile/ ), courtesy of Sandy Enoch of Robotical Ltd. and Alejandro Bordallo. Marty is designed to work with the official ROS Marty stack.
  • A swarm controller for the teleoperation of robot swarms in a V-REP based simulation environment, courtesy of the robotics and control systems laboratory of the Sapientia Hungarian University of Transylvania, is available here.
  • Added a JSON module for Lua: dkjson, courtesy of David Heiko Kolf.


  • V-REP V3.3.2 (August 29th 2016)

  • Fixed several bugs. Thanks to Hao Wang, Robert Lang, Riccardo Spica, Matias Nitsche, Sven Knüppel, Ndivhuwo Makondo, Yu Zhang, Paul Santiago Tumbaco Casa, DeKita G. Moon, Rodrigo Moreno Garcia, Federico Ferri and Arjun Narayanan for noticing them or helping to resolve them.
  • Improved the point cloud functionality. You can now specify a minimum distance tolerance which is used to avoid duplicate points. The tolerance can be specified in the point cloud properties dialog, or via sim.insertPointsIntoPointCloud or sim.insertObjectIntoPointCloud.
  • Added a simulation model of the Sawyer robot: models/robots/non-mobile/Sawyer.ttm. The original CAD data is courtesy of Rethink Robotics.
  • Added an infinite floor model, that allows to mimic an infinite floor: Models/infrastructure/floors/infiniteFloor.ttm.
  • Added the paths <currentScenePath> and <V-REPInstallationPath/lua> to the Lua path variable of all scripts.
  • Improved the custom UI plugin: widgets can now be enabled/disabled, and event messages supressed when setting a widget value. An editing finished event can now also be generated for edit boxes.
  • Added a G-code interpreter that can be found in lua/gcode.lua. A demo scene was also added: Scenes/gCode.ttt.
  • Added several new API functions: sim.openTextEditor, sim.packTable and sim.unpackTable.
  • Added a first version of a SDF format importer plugin, courtesy of Federico Ferri.
  • An SDL2 library plugin, courtesy of Tobias Benz, is available here.


  • V-REP V3.3.1 (May 17th 2016)

  • Fixed several bugs. Thanks to Ahmed Yacine, Korolyov Alexei, Graeme Neff Wilson, Daniel Angelov, Scott Hissam, Mohammed Talha and Mark Fink for noticing them or helping to resolve them.
  • Added a new ROS plugin (ROS Interface), which supports most standard ROS messages, and which naturally duplicated the ROS C/C++ API. We highly recommend to use this new ROS interface, rather than the previous one (RosPlugin). Both however can run side-by-side. The scene controlTypeExamples.ttt was adjusted and now includes an additional robot, which is controlled via the new ROS Interface. A new scene was created that also illustrates the new ROS Interface: rosInterfaceTopicPublisherAndSubscriber.ttt.
  • Added a new object type: OC trees. They represent a spatial partitioning based of voxels and can be used for various purposes (e.g. simplified shape representation, occupancy grid/space, etc.). OC trees are collidable, measurable and detectable. New API function related to OC trees are listed here.
  • Added a new object type: point clouds. They represent points stored inside of an OC tree-like data structure and can be used for various purposes (e.g. point storage and manipulation, etc.). Point clouds are collidable, measurable and detectable. New API function related to point clouds are listed here.
  • Added a new scene (collisionDetectionDemo.ttt), which illustrates V-REP's collision detection capabilities on dummies, shapes, OC trees and point clouds.
  • Added a new scene (minimumDistanceCalculationDemo.ttt), which illustrates V-REP's minimum distance calculation capabilities on dummies, shapes, OC trees and point clouds.
  • Added a new scene (proximitySensorDemo2.ttt), which illustrates V-REP's proximity sensor capabilities on dummies, shapes, OC trees and point clouds.
  • Added two new scenes: octreeGenerationDemo.ttt and navigationWithinAPointCloud.ttt.
  • Added a new OMPL plugin function, that allows to specify several goal states for a given task: simOMPL.addGoalState. Following demo scenes now use this new functionality: motionPlanningDemo1.ttt, motionPlanningServerDemo.ttt and motionPlanningAndGraspingDemo.ttt.
  • Added a new type of custom user interface, based on a plugin and Qt: Qt-based custom UIs. A demo scene can be found at scenes/customUI-QtBased.ttt.
  • Added a menu item that allows to compute the inflated convex hull of a shape. This is useful in order to generate simplified collision object that are slightly bigger than their original. The menu item is located at [Menu bar --> Add --> Inflated convex hull of selection...]
  • Added stack functions that allow to hold almost any type of data or data structure. This is useful for flexible communication between plugins and scripts. Following new API functions now use stacks: simCallScriptFunctionEx and simRegisterScriptCallbackFunction.
  • Added setter and getter API function for the physics engine properties.
  • Added a newer version of the Bullet engine (i.e. V2.83). The new version offers now 4 different solver types: sequential impulse, NNCG, Dantzig, and projected Gauss-Seidel. All physics engine's plugins have been reworked.
  • Added two additional spherical vision sensors: they now allow to retrieve spherical RGB images, spherical depth buffers, or spherical RGB images and depth buffers: Models/components/sensors/spherical vision sensor RGB.ttm, Models/components/sensors/spherical vision sensor depth.ttm, Models/components/sensors/spherical vision sensor RGB + depth.ttm.
  • Reworked the Velodyne sensors, which are now using the new point cloud object. This means that sensor points can now be collidable, measurable and detectable.
  • Added three new API functions: sim.loadImage, sim.getScaledImage and sim.transformImage.
  • Added a model, allowing to start, pause, stop or step a synchronous simulation, from a ROS node. The model is based on the new ROS Interface and is located in Models/tools/rosInterfaceHelperTool.ttm
  • An IMU ROS plugin, courtesy of Bartolomeo Della Corte, is available here.


  • V-REP V3.3.0 (February 19th 2016)

  • Fixed several bugs. Thanks to Federico Ferri, Tiago Malheiro, Raimund Krenmueller, Ahmed Yacine, Matthias Ploner, Indranil Sur, Sung Kyun Kim, Andrew Hundt, Rik Timmers, Matthew Veres and Graeme Neff Wilson for noticing them or helping to resolve them.
  • Added a first version of a plugin that wraps OMPL, the Open Motion Planning Library. The plugin is courtesy of Federico Ferri. The source code of the plugin is located here. Following demo scenes are now using the OMPL plugin functionality: motionPlanningDemo1.ttt, motionPlanningAndGraspingDemo.ttt, 3DoFHolonomicPathPlanning.ttt and 6DoFHolonomicPathPlanning.ttt, motionPlanningServerDemo.ttt.
  • Added a new ROS service, ROS publisher type, and ROS subscriber type: simRosCallScriptFunction, simros_strmcmd_receive_data_from_script_function and simros_strmcmd_send_data_to_script_function. These are very useful when a regular API function is not immediately available in the RosPlugin, or when a succession of complex commands need to be executed locally. Have a look at the demo scene rosTopicPublisherAndSubscriber2.ttt, which illustrates the new functionality.
  • Improved and corrected the sim.callScriptFunction API function.
  • sim.loadModule and sim.unloadModule can now also be used from a script, in order to dynamically load/unload a plugin. Certain restrictions apply: in particular, if the plugin registered custom lua functions via simRegisterCustomLuaFunction without specifying the function name as functionName@pluginName, a crash might occure during the dynamic plugin unload operation.
  • Added an API function that allows to compute the Jacobian of an IK group.
  • The V-REP source code can now be compiled for headless operation, without any Qt dependency. In that case however, the vision sensors will only generate an image content when the rendering is handled via a plugin (e.g. POV-Ray or and external renderer).
  • Added following new API functions: sim.computeMassAndInertia and sim.getExtensionString.
  • Added a model of the uArm with gripper and inverse kinematic routine: Models/robots/non-mobile/uarm with gripper.ttm
  • A constrained optimization IK plugin for V-REP, courtesy of Andrew Hundt, is available here. Installation instructions for Linux / OSX are available here.


  • V-REP V3.2.3 (November 24th 2015)

  • Fixed several bugs. Thanks to Karol Mocniak, Ana Lucia, Ricardo Azambuja, Diego Daniel Santiago, Graeme Neff Wilson, Anto Ronson and Minson Lee for noticing them or helping to resolve them.
  • Added a simulation model of the ABB IRB 4600-40/2.55 robot, courtesy of ABB. The model is located at Models/robots/non-mobile/ABB IRB 4600-40-255.ttm
  • Added a scene illustrating workspace visualization: scenes/workspace.ttt
  • Added several new API functions: sim.getQHull, sim.getDecimatedMesh.
  • Added two simple add-ons illustrating scene content export/import: minimalisticExporter and minimalisticImporter.
  • Improved the convex hull calculation routines.
  • Added several convenience functions to morph shapes into their convex hull repesentation, to decimate shapes, and to extract a shape's inside. The functions can be accessed with [Menu bar --> Edit --> ...].
  • Added a new tutorial on building clean and efficient simulation models. This tutorial is a must for everyone who wishes to create his/her own models.
  • Simplified the BubbleRob tutorial.
  • Added a section about joint controllers and how to implement them within V-REP, or inside of an external application (e.g. a remote API client, or a ROS node).
  • Added a model of the P-Arm robot, and two of its grippers. The CAD data is courtesy of F&P Robotics. The models can be found at models/robots/non-mobile/P-Arm.ttm, models/components/grippers/P-Grip-straight.ttm and models/components/grippers/P-Grip-right-angle.ttm.
  • Added several simple example scenes that illustrate how to use the kinematics module. The scenes can be found in scenes/kinematics.
  • Updated the webcam plugin for V-REP, using the newest ESCAPI library. A model using that plugin can be found in Models/other/webcam.ttm. The source code of the plugin can be found here.
  • Added a simulation model of the Velodyne VPL-16. The model can be found in Models/components/sensors/velodyne VPL-16.ttm.
  • Added a new API function that allows to call a script function from a plugin or another embedded script: sim.callScriptFunction.


  • V-REP V3.2.2 (September 5th 2015)

  • Fixed several bugs. Thanks to Kshitij Tiwari, Victor Gomez, Martin Pecka, Parker Owan, Raimund krenmüller, Robert Lang, Muhammad Umer Huzaifa, Marshall Floyd, Inkyu Sa, Augusto Gandia, Raimund Krenmüller, Tobias Groll, Wu Xiaojun for noticing them or helping to resolve them.
  • Switched to Qt 5.5.0 for the Windows, the MacOS and the Linux versions.
  • Reworked many dialogs by adapting the floating-point number display, the unit display, and removing some deprecated/rarely used items. The user interface units are now fixed to degrees, meters, seconds, kilograms, Newtons, etc. to avoid confusions.
  • Added an edit mode for compound shapes. This allows to edit the visual parameters of a compound shape without having to ungroup it.
  • Added a possibility to automatically compute the mass and inertia tensor for convex shapes in the shape dynamic properties. The algorithm is courtesy of Chris Hecker.
  • Added a plugin able to render ray-traced images (via vision sensors or via cameras). This will allow to perform more realistic image-based control. The plugin is based on POV-Ray and allows rendering shadows (also soft) and focal blur. The ray-tracer plugin is courtesy of Andreu Vidal. The source can be found here.
  • Added a plugin for support of the Newton Dynamics engine. The plugin is currently a BETA version, and will be improved for next release. The plugin is courtesy of Julio Jerez and Alain Suero.
  • Added a plugin that performs the rendering instead of a vision sensor or a camera. The plugin is meant as an example, and its source can be found here.
  • Added a scene that demonstrates the various rendering modes available in V-REP: scenes/rendererDemo.ttt.
  • Modified the way how V-REP interacts with the physics plugin: it is now possible to compile the Bullet, ODE, Vortex or Newton plugins separately. This will greatly simplify adding additional physics engines.
  • Modified the legacy remote API Python bindings, including the Python example programs. They should work fine on Python 2.x, Python 3.x and IronPython.
  • The OpenRTM-aist is now supported thanks to Yuki Suga. Installation instructions are given here.
  • Moved the Qhull functionality out of V-REP's main library, into a plugin (simExtQhull). The source code can be found here.
  • Moved the convex decomposition functionality out of V-REP's main library, into a plugin (simExtConvexDecompose). The source code can be found here.
  • The convex decomposition plugin now also offers the V-HACD algorithm (next to the HACD algorithm). Both are courtesy of Khaled Mamou.
  • Added a model of a ball balancing robot: Models/robots/mobile/ball robot.ttm.
  • Added a model of the uarm: Models/robots/non-mobile/uarm.ttm. The CAD data is courtesy of EVOL.
  • Added a model of the RG2 gripper: Models/components/grippers/RG2.ttm. The CAD data is courtesy of On Robot ApS.
  • Added a demo scene illustrating a grasping task with the UR5 robot and RG2 gripper: Scenes/ur5WithRg2Grasping.ttt.
  • Added a model of a tracked vehicle, courtesy of Qi Wang: Models/vehicles/tracked vehicle.ttm.
  • Updated the screenshot tool in order to be also able to render ray-traced screenshots (Models/tools/high-res screenshot tool.ttm).
  • The NAO robot can now be controlled via Python and python NAOqi SDK. The project is available here, and is courtesy of Pierre Jacquot and Gurvan Le Bleis.
  • A Xbox 360 controller plugin is available for V-REP here. The plugin is courtesy of Nicola Di Pol.
  • Added a shared memory communication plugin for V-REP, courtesy of Diego Daniel Santiago. The files, including a Simulink example, are located in programming/sharedMemoryCommunicationPlugin.


  • V-REP V3.2.1 (May 4th 2015)

  • Fixed several bugs. Thanks to Jan Dentler, Robert Lang, Raimund Krenmüller, Cedric Pradalier, Reza Mahjourian, Anuraj Rajendraprakash, Sébastien Granges, Ángel Luis Jiménez García, Leander Hille, Pierre Rouanet, Ulrich Schwesinger, Kenichi Hara, Federico Ferri, Martin Pecka and Nicola Piccinelli for noticing them or helping to resolve them.
  • Added 2 classes (CLuaFunctionData and CLuaFunctionDataItem) that greatly simplify passing arguments to/from custom Lua function created in plugins. The two classes are located in programming/common and programming/include folders.
  • Completely rewrote the Khepera3, the MTB, and the BubbleRob plugins: they have been greatly simplified.
  • V-REP now supports the RRS-1 specifications via a plugin (simExtRRS1). It allows to connect and interact with all RCS modules and robots that supports the RRS-1 specifications. For an example have a look at the demo file scenes/RRS-1 demo.ttt.
  • Rewrote the plugin tutorial, which has become much simpler.
  • Rewrote the robot language integration tutorial, which has become much simpler.
  • The CHAI3D plugin (for interfacing a haptic device) has been completely rewritten and greatly improved, courtesy of Sébastien Granges. Visit www.chai3d.org or www.forcedimension.com for the source code of that plugin. In case it is not yet available on those websites, please contact us.
  • Added a demon scene that illustrates navigation of a mobile robot via a haptic device (Scenes/hapticRobot.ttm). The device will let the user feel the obstacles.
  • Added an interface plugin to the OpenMesh library. The plugin source code is located here.
  • Added a tool model that allows to simplify high-poly shapes: Models/tools/mesh decimation tool.ttm. The tool relies on the new OpenMesh plugin for V-REP.
  • Added a tool model that allows to separate the inside/outside parts of shapes: Models/tools/mesh inside outside separation tool.ttm.
  • Added a demo scene (Scenes/headlessModeDebug.ttt) that illustrates how to launch a headless instance of V-REP, connect to it, and stream back the view of the scene.
  • Added a model that allows to extract Denavit-Hartenberg parameters in a kinematic chain (Models/tools/Denavit Hartenberg parameter extractor.ttm).
  • Added a model that allows to create joints in poses defined by Denavit-Hartenberg parameters (Models/tools/Denavit Hartenberg joint creator.ttm).
  • Added an API function that allows saving images: sim.saveImage
  • Added a model, courtesy of Ulrich Schwesinger, allowing to take high-resolution screenshots of the scene: Models/tools/high-res screenshot tool.
  • Added a model that allows to modify shape colors that are named: Models/tools/color change tool from color names.ttm.
  • Added a model that allows to find the intersection between a plane and a ray: Models/tools/plane ray intersection finder tool.ttm.
  • An example of Snap! controlled line follower in V-REP is available here, courtesy of Ilya Nemihin.
  • A small Python programm that allows transferring a MeshLab inertia tensor to V-REP is available here, courtesy of Michael Michalik.


  • V-REP V3.2.0 (February 3rd 2015)

  • Fixed several bugs. Thanks to Reza Mahjourian, Ben Allan, Soner Ulun, Robert Lang, Guenter Schreiber, Sven Knüppel, Eva Alves Costa, Lucian Cucu, Sigurd Villumsen, Andrea Censi, Pierre Rouanet, Leander Hille, Christoph Hügle, William Harrison, Robert Lang and Scott Drew Pendleton for noticing them or helping to resolve them.
  • Switched to Ubuntu 14.04.1 LTS for Linux versions of V-REP.
  • The precompiled ROS items are now specifically meant for ROS Indigo. If you use a different version, make sure to recompile them.
  • Switched to Qt 5.4.0 for Linux versions of V-REP.
  • Improved the visual appearance of 3D objects by adjusting the way meshes are rendered. This can lead to small differences in color/lighting with previous V-REP releases. You may have to adjust the ambient light manually.
  • Added backtrace information output, for easier debugging of script code.
  • Script colors can now individually be adjusted. See the file system/usrset.txt.
  • Objects can now be selectively seen from a given camera or vision sensor. This can be adjusted in the object common properties.
  • High resolution displays (such as Retina display) are now fully supported, and should be automatically detected. You can force a different behaviour by adjusting the value of highResDisplay in the file system/usrset.txt.
  • Added a model of the Velodyne HDL-64E S2 Lidar: Models/components/sensors/velodyne HDL-64E S2.ttm.
  • Added a model that allows interaction with a haptic device (Models/other/interface to haptic device.ttm), courtesy of Force dimension, Francois Conti (CHAI3D) and Julien Tharin. The related plugin project files are located here.
  • Added a model of a customizable office building: Models/infrastructure/urban/customizable building.ttm.
  • Added a model of a paint bomb: Models/components/modifiers/paint bomb.ttm.
  • Added a model that allows to quickly adjust the color of shapes or entire models: Models/tools/quick shape color tool.ttm.
  • Added a model that allows to quickly adjust all the lights in a scene: Models/tools/quick light adjust tool.ttm.
  • A V-REP ROS bridge is available here, courtesy of Riccardo Spica and Giovanni Claudio.
  • Pioneer 3D-X controlled via a visual servoing law (courtesy of Riccardo Spica and Giovanni Claudio)
  • A first backend to integrate ros_control loop in V-REP is available here, courtesy of Antoine Rennuit.
  • Added following new API functions: sim.switchThread (now also available from the C API), sim.packUInt8Table, sim.unpackUInt8Table, sim.packUInt16Table and sim.unpackUInt16Table.
  • Added a model that allows to measure the distance between two clicked points in the scene: models/tools/point-point distance tool.ttm.
  • Added a model that allows to measure the normal vector of a clicked surface in the scene: models/tools/normal vector measurement tool.ttm.


  • V-REP V3.1.3 (October 1st 2014)

  • Fixed several bugs. Thanks to Renaud Detry, Daniel Lechner, Ulrich Schwesinger, Sven Knüppel, Steve Nguyen, Jonas Sperling, James Besancon, Andrew Vardy, Rodrigo Moreno Garcia, Thomas Estier, Matthias Imle, Daniel Kuhner, José Rosado, Eric Rohmer and Soner Ulun for noticing them or helping to resolve them.
  • Improved the embedded script editor with following new features: highlighting of all occurrences of selected word, source folding/unfolding, simple word search via the <ctrl+f> key.
  • External script editors can now be customized with the data in file v-rep_notepad++.zip: this allows for keyword highlighting, auto-completion and call tip display.
  • Improved the shape serialization routines, effectively reducing generated file sizes, mainly if they contain duplicate geometric content. The generated file format cannot be read by previous V-REP versions (prior to V-REP 3.1.3), so make sure to make backup copies.
  • Added a new type of embedded script: customization scripts. They are associated with scene objects (same as child scripts) and can be used to customize a simulation scene to a great extent. The main difference with child scripts is that customization scripts are running all the time, also when simulation is not running.
  • Added several models that demonstrate the new customization script functionality: Models/nature/terrain bump.ttm, Models/nature/Terrain.ttm, Models/nature/Tree.ttm, Models/infrastructure/other/resizable concret block.ttm, Models/infrastructure/floors/resizable floor*.ttm, Models/tools/playback tool.ttm, Models/tools/isometric scaling tool.ttm, Models/tools/name change tool.ttm, Models/tools/custom data viewer tool.ttm, Models/equipment/conveyor belts/customizable conveyor belt.ttm, Models/furniture/tables/customizable table.ttm.
  • Modified the way child scripts are handled in order to make them operate in a more coherent manner:
  • child scripts execution is now automatically cascaded (i.e. no need to explicitely call simHandleChildScript anymore).
  • child scripts are now executed in the actuation phase as well as in the sensing phase of a given simulation step: there is no distinction anymore with what previously used to be sensing child scripts.
  • script compatibility with previous file versions is guaranteed by 1) automatic child script code modification (clearly marked as such), 2) automatic main script replacement. This covers 99% of all situations, but it can happen that this automatic modification partly fails (e.g. when the main script was customized, or when explicitely executing a specific child script (previously marked as explicit handling)). In that case, contact us for assistance.
  • Improved the rendering speed. If compatibility issues arise, please contact us, and try to disable VBO operation here.
  • Improved the start-up time of certain simulation scenes, by adding a broad mode for collision detection, minimum distance calculation and proximity sensor detection: Oriented Bounding Box (i.e. OBB) data structures are now only computed on-the-fly and only when absolutely necessary. This can be visualized via [Menu bar --> Help --> Debug --> Visualize prepared OBB calculation structures].
  • Added 3 new API functions: sim.copyPasteObjects, sim.scaleObjects and sim.removeModel. simCopyPasteSelectedObjects, simScaleSelectedObjects and simDeleteSelectedObjects are declared deprecated.
  • Added project files for custom ROS plugins for V-REP (i.e. in order to support specific ROS messages of a specific robot).
  • Added a model of the Robotnik Summit XL robot, courtesy of Roberto Guzman: Models/robots/mobile/Robotnik_Summit_XL_140701.ttm
  • Improved the undo/redo functionality that now operates in a more consistent manner. Camera movements are not considered as undo points anymore. This behaviour can be adjusted via the user settings file system/usrset.txt.
  • The API functions sim.readCustomDataBlock and sim.writeCustomDataBlock can now also be used to attach custom data to scripts. At the same time you can now also specify whether the data should be saved during a scene or model save operation.
  • The vision sensor code has been optimized and vision sensors now run faster. They now can also operate in a different mode, in order to simulate the temperature of objects for instance, or in order to detect object handles.
  • Added several new API functions: sim.getObjectsInTree, sim.scaleObject (i.e. non-isometric scaling), sim.getShapeTextureId, sim.setShapeTexture, sim.getCollectionObjects, sim.handleChildScripts and sim.reorientShapeBoundingBox.
  • Added a SLAM demo based on ROS, courtesy of Leopoldo Armesto.
  • Added a link to a tutorial on teaching robotics with a simulator, courtesy of Prof. Renaud Detry.
  • Added a link to a Python quadrotor simulator, courtesy of B. Acharya, F. Gisa, and S. D. Levy.
  • Added a link to the TAPIR implementation of the Adaptive Belief Tree (ABT) algorithm, courtesy of Hanna Kurniawati, Dimitri Klimenko, Joshua Mun Song and Vinay Yadav.
  • The middle mouse button can now be deactivated in order to not react to a press action. This can be done in the user settings file in system/usrset.txt.
  • Added an interface model to the Arduino Esplora, located in Models/other/Arduina Esplora.ttm. The model is courtesy of Eric Rohmer.
  • Added a function that allows to link two dynamic joints (i.e. a force/torque applied to one will be transmitted to the other one, and vice-versa). This allows to simulate complex gear mechanisms, without the need to simulate the gear contacts. This feature is currently only supported via the Vortex plugin.
  • Added a demo scene that illustrates how to simulate gear mechanisms with Vortex: scenes/gearMechanism.ttt.
  • Changed the camera navigation method: camera rotations are now performed with the middle mouse button, instead of the right mouse button (which was, to many, confusing and not practical). The right mouse button is now exclusively reserved for pop-up menus. The previous navigation method can still be enabled via the variables navigationBackwardCompatibility and middleMouseButtonSwitchesModes in the system/usrset.txt file, but this is not recommended since this option will probably disappear in future.
  • Added a play back tool, that allows you to manually step through a simulation. The model file is located in Models/tools/playback tool.ttm.


  • V-REP V3.1.2 (June 17th 2014)

  • Fixed several bugs. Thanks to Matt Derry, Daniel Morberg, Andreas Kuhner, Danilo Vasconcellos Vargas, Spencer Krause, Daniel Kuhner, Luigi Ferri, Filip Jares, Michaela Richter, Matthias Schindler and Ulrich Schwesinger for noticing them or helping to resolve them.
  • Fixed a bug of the PID joint controller: in older V-REP versions, the I and D parameters had to be wrongly scaled in order to obtain the correct behaviour. The controller was now fixed and parameters are automatically scaled to a correct value when loading older file versions. Custom joint callback controllers will have to be adjusted manually if they make use of the I or D parameters.
  • The joint dynamics properties have been reorganized in order to facilitate the creation of spring-damper systems, by allowing to directly specify the spring constant K and its damping coefficient C.
  • Matlab versions previous to 2008a might be supported via the files located here, courtesy of Gerold Huber.
  • The RosPlugin was catkinized, courtesy of Arne Hitzmann and Sergi Foix.
  • V-REP now also supports 3D OpenGL stereo mode (for dedicated hardware, i.e. specific stereo-enabled graphic cards with corresponding monitor/device). To enable it, set a value different from 0 for stereoDist in file system/usrset.txt. The console should indicate at start-up if the mode was successfully enabled. Make sure to correctly configure your graphic card (i.e. 3D OpenGL stereo & correct stereo display mode).
  • Added a simulation model of the Baxter robot, including its vacuum cup and gripper tools: models/robots/non-mobile/Baxter.ttm, models/components/grippers/Baxter vacuum cup.ttm and models/components/grippers/Baxter gripper.ttm. The original CAD data is courtesy of Rethink Robotics.
  • Added a simulation model of the Phantom X Pincher: models/robots/non-mobilePhantomXPincher.ttm. The original CAD data is courtesy of Trossen Robotics.
  • Added models of a generic revolute motor, a generic revolute servo (with and without backslash), a generic revolute spring-damper, and a generic prismatic motor. They are located in the models/components/actuators/ folder.
  • Improved the OBJ file format importer.
  • Switched to an updated Vortex library (V6.1.2) that offers an improved contact generation.
  • Added a simulation model that allows visualizing the center of mass of a dynamic model: models/other/center of mass visualizer.ttm.
  • Added a new API function to retrieve geometric information about shapes: sim.getShapeGeomInfo.
  • Added a new API function that helps to make a motion planning transition from one configuration to another, by following a predefined Cartesian space path. This is useful for redundant manipulators, but also for safely driving non-redundant manipulators via IK through a singular configuration: simGetMpConfigTransition.
  • simRMLPosition and simRMLVelocity are declared deprecated and are replaced by following API functions: sim.ruckigPos, sim.ruckigVel, sim.ruckigStep and sim.ruckigRemove.
  • Added a simulation model of the Adept Quattro 650HS parallel manipulator, courtesy of Preben Hjornet: models/robots/non-mobile/Adept Quattro 650HS.ttm. The original CAD data is courtesy of Adept Technology.
  • Added a plugin that implements shared memory communication, courtesy of Diego Daniel Santiago. The source code, currently only running on Windows, is located here.


  • V-REP V3.1.1 (March 27th 2014)

  • Fixed several bugs. Thanks to Stéphane Magnenat, Ulrich Schwesinger, Philipp Krüsi, Pascal Gohl, Klaus Raizer, Paulo Gurgel, Marco Bellaccini, Gianpaolo Gonnelli, Felix Herrmann, Edgar Virga, Josep Tormo Costa, Gaël Ecorchard, Renaud Detry, Marc Durvaux, Robert Lang and Alexander Rietzler for noticing them or helping to resolve them.
  • Added simulation models of the new KUKA LBR IIWA robots: models/robots/non-mobile/KUKA LBR4 iiwa 7 R800.ttm and models/robots/non-mobile/KUKA LBR4 iiwa 14 R820.ttm
  • Added a simulation model of the Pioneer P3DX robot, courtesy of Eric Rohmer and Joost a.k.a. J-m@n: models/robots/mobile/pioneer p3dx.ttm
  • Added a simulation model of the Jaco manipulator, courtesy of Eric Rohmer and Kinova Robotics for the CAD data: models/robots/non-mobile/Jaco arm.ttm and models/components/grippers/Jaco hand.ttm.
  • Added a simulation model of the Mico manipulator, courtesy of Eric Rohmer and Kinova Robotics for the CAD data: models/robots/non-mobile/Mico arm.ttm and models/components/grippers/Mico hand.ttm.
  • Added preliminary simulation models of the UR5 and UR10 robots, courtesy of Universal Robots for the CAD data: models/robots/non-mobile/UR5.ttm and models/robots/non-mobile/UR10.ttm.
  • The simulation model of the Kuka LBR4+ was updated by Massimo Cefalo, in order to beahve more like the real one (adjusted masses and inertias).
  • Added new API functions to control the material of a shape: simGetMaterialId, simGetShapeMaterial and sim.setShapeMaterial.
  • Added new API functions to create and modify textures: sim.getTextureId, sim.readTexture, sim.writeTexture, sim.createTexture.
  • Added new API functions related to motion planning: simSimplifyMpPath and simFindIkPath.
  • Completed the documentation of the motion planning functionality.
  • Added new API functions that allow to easily store custom data inside of scene objects, or inside of a scene file: sim.writeCustomDataBlock and sim.readCustomDataBlock.
  • Added a new simulation scene that illustrates motion planning and grasping: scenes/motionPlanningAndGraspingDemo.ttt.
  • Added a new plugin (simExtVision) in charge of various tasks. Currently, it exports 2 custom Lua function to handle spherical vision sensors and anaglyph stereo cameras. The plugin source code is located here.
  • Added a simulation model of a spherical camera, which features a 360x180 view of the scene: models/components/sensors/spherical vision sensor.ttm.
  • Added a simulation model of an anaglyph stereo camera, which generates anaglyphic images (e.g. red-cyan coded images): models/components/sensors/anaglyph stereo vision.ttm.


  • V-REP V3.1.0 (January 20th 2014)

  • Switched to Qt5.2.0 for the Mac and Linux releases, which solved a few open glitches/bugs. The Windows release is still running under Qt5.1.1.
  • Fixed several bugs. Thanks to Matthias Schindler, Renaud Detry and Ulrich Schwesinger for noticing them.
  • Added a scene that illustrates the new ghost recorder functionality: ghostDemo.ttt.
  • Added two models that illustrate the new ghost recorder functionality: Models/other/ghostRecorder.ttm and Models/other/ghostTracer.ttm
  • Added a file-menu item that allows easily loading recently opened scene files.
  • simLockInterface is declared deprecated and has no effect anymore.
  • Added a model of a basket: Models/infrastructure/other/largeBasket.ttm.
  • Added a Debug menu item in the Help menu. This allows displaying various debug information to the console or a file, or running the simulator in special modes.
  • Added a laserscan and odometry publisher to the RosPlugin, together with a laser scanner model prepared for ROS: models/components/sensors/Hokuyo_URG_04LX_UG01_ROS.ttm. The code modification and the model are both courtesy of George Moustris.
  • Added following regular API functions: sim.quitSimulator.
  • Added the option to run V-REP headless (without any graphical user interface (i.e. in the command line only)), as well as other command line options. The graphics libraries are still needed. A binary that doesn't rely of graphics libraries is planned.
  • Added a bridge to OpenCV via a plugin, courtesy of Marco Bellaccini. The files are located here.
  • Added a first version of a Labview interface for the legacy remote API, courtesy of Peter Mačička.


  • V-REP V3.0.5 (October 27th 2013)

  • Switched to Qt5.1.1. Many changes and refactorings were made, and are still ongoing.
  • Added optional support for high fidelity physics with the Vortex Studio engine. Thanks to Martin Courchesne and SimWat for their plugin implementation. The plugin will gradually be improved in order to support simulation requirements in various fields (fluids, particles, etc.).
  • Added a motion planning functionality, that allows to plan movement sequences of kinematic chains, in a clutered environment. The documentation on this is unfortunately not yet very exhaustive, make sure to refer to the motion planning dialog and the related API functions.
  • Added 3 scenes to illustrate the new motion planning functionality: motionPlanningDemo1.ttt, motionPlanningDemo2.ttt and motionPlanningDemo3.ttt.
  • Added a simulation model of the SICK TiM310 laser scanner: models/components/sensors/SICK TiM310 Fast.ttm
  • Fixed several minor bugs. Thanks to Billy Newman, Ruediger Dehmel, Renaud Detry, Roband and Hendrik Wiese for noticing them, and even providing patches.
  • Added a simulation model of a generic GPS sensor: models/components/sensors/GPS.ttm
  • Following texture file formats are now supported: JPEG, PNG, TGA, BMP, TIFF & GIF. Thanks to Sean Barrett for his image loading routines (used for GIF and TGA).
  • Adjusted all default light intensities and default object colors (ambient component only) in order to be more compatible with other CAD applications. Older scenes and models will automatically adjust for that during a load operation (i.e. light intensities will be scaled by 0.675, colors by 1.5). If you do not wish for this automatic adjustment, turn variable correctColorsAndLights to false in system/usrset.txt.
  • Added a ROS publisher for vision sensor depth data as RGBD point cloud, courtesy of Cedric Pradalier.
  • Added a possibility to create negative volumes (i.e. holes) in pure shapes, for efficient dynamic simulation of tubes or pipes for instance.
  • Fixed a bug affecting the regular API function sim.getObjectVelocity.
  • Added more predefined page configurations.
  • Added a gamepad interface to the RosPlugin. The code is courtesy of Roberto Marino.
  • Added a model of a buggy with suspension and differential: models/vehicles/manta with differential.ttm. The model is courtesy of Qi Wang.
  • Added a full screen mode.


  • V-REP V3.0.4 (July 8th 2013)

  • Fixed several minor bugs. Thanks to Brian Yeomans, Kiyoshi Irie, Ulrich Schwesinger, David Butterworth and Xinyu Zhang.
  • Added the possibility for vision sensors to ignore their RGB or depth information. When used, this allows to accelerate vision sensor operation. Refer to the vision sensor properties.
  • Added two new vision sensor filters. The first allows to extract coordinates from a vision sensor depth map. This allows to create fast laser scanner models, such as models/components/sensors/Hokuyo URG 04LX UG01_Fast.ttm or models/components/sensors/3D laser scanner Fast.ttm. The second added vision sensor filter allows to track individual pixel changes, such as in the model models/components/sensors/DVS128.ttm, courtesy of IniLabs.
  • Added a new demo scene: fabricationBlocks.ttt
  • Added several fabrication/transformation block models, that can be combined with each other to simulate complex fabrication processes (see the demo scene fabricationBlocks.ttt). The new models are located in models/examples/block factory.
  • Added a new model: models/components/sensors/push button.ttm
  • Added a new gripper model courtesy of ROBOTIQ: models/components/grippers/ROBOTIQ 85.ttm
  • Added a simulation model of the SICK S300 laser scanner: models/components/sensors/SICK S300 Fast.ttm
  • Added a simulation model of the KUKA Omnirob robot: models/robots/mobile/KUKA Omnirob.ttm
  • Added a simulation model of the KUKA LBR4+ robot: models/robots/non-mobile/KUKA LBR4+.ttm
  • Added a simulation model of the Kilobot, together with its controller model: models/robots/mobile/Kilobot.ttm and models/robots/mobile/Kilobot_Controller.ttm. The models are courtesy of K-Team.
  • Added new wall models, in 3 different heights: 240cm, 80cm and 20cm. They are located in models/infrastructure/walls
  • Removed the annoying watermark appearing when recording a movie (Simulated with V-REP)


  • V-REP V3.0.3 (April 29th 2013)

  • Fixed a bug created in release 3.0.2: pure shapes would see their Bullet custom collision margin scalings set to a non-default value automatically. Thanks to Geerten Doornenbal and others for reporting this.
  • Fixed several minor bugs. Thanks to Qi Wang, Giordano and Karl Robillard.
  • Added also following new regular API functions: sim.getJointMode, sim.getJointTargetPosition and sim.getJointTargetVelocity.
  • Added 3 new object parameter IDs (3020-3022) that allow setting the initial rotational velocity of a dynamically enabled shape.
  • Added a toolbar button that facilitates object/model re-instanciation: this allows modifying in a same way an unlimited number of same robots.
  • Added a tutorial about a line following robot, courtesy of Eric Rohmer.
  • Added two new API functions: simEnableWorkThreads and simWaitForWorkThreads. They allow to execute sensing operations concurrently (i.e. in parallel), taking advantage of several processor cores. By default the functionality is turned off. It can be turned on via the user settings dialog, the variable workThreadCount in file system/usrset.txt, or programmatically via sim.setInt32Param(sim.intparam_work_thread_count,coreCount). Refer also to the default main script, that was slightly modified to accomodate for that.
  • Added a new model: models/other/timing info.ttm. It allows to quickly have an overview of the time spent in the various calculations.
  • Added a new model: models/other/joint recorder.ttm. It allows to record the joint movements of a model, then to play them back.
  • Added a new model: models/robots/mobile/NAO.ttm. The model is courtesy of Marco Cognetti, the mesh and movement data is courtesy of Aldebaran. The model is a first example model of NAO, an improved version should follow in next release.
  • Added following new RosPlugin services/publishers: simRosGetAndClearStringSignal and simRosCreateDummy.


  • V-REP V3.0.2 (March 14th 2013)

  • Corrected a bug related to convex shapes
  • Improved the URDF importer (scaling is now taken into account and rpy mix-up (different rotation multiplication order) was also fixed). Thanks to Barrett Ames and Luca Marchionni for pointing that out.
  • Added a new regular API function: sim.getObjectVelocity (slightly different from the already existing sim.getVelocity function).
  • Added a new RosPlugin service: simrosAppendStringSignal. This allows to easily send data that is automatically buffered on V-REP.
  • Added some testing / adjustment mechanisms to improve rendering performance on certain graphic cards / platform combinations. Thanks to Cedric Pradalier for intensive testing. Refer to the system/usrset.txt file.
  • Corrected various bugs. Thanks to Arnaud Leleve, Geerten Doornenbal, Pouya Mohammadi, Nikolaus Wittenstein, Ayberk Ozgur.
  • Replaced the old convex hull calculation routines with the Qhull routines, courtesy of Brad Barber.
  • Added a few new shortcut keys.
  • Added an example Ackermann steering vehicle: models/examples/simple Ackermann steering.ttm
  • Added two transceiver models: models/components/sensors/transceiver.ttm and models/components/sensors/directionalTransceiver.ttm
  • Added several mechanisms allowing to execute sensing operations concurrently (i.e. in parallel), taking advantage of several processor cores. By default the functionality is turned off, since still in development phase. It can be turned on via the variable workThreadCount in file system/usrset.txt, or programmatically via sim.setInt32Param(sim.intparam_work_thread_count,coreCount). Refer also to the default main script, that was slightly modified to accomodate for that.


  • V-REP V3.0.1 (January 20th 2013)

  • Convex shapes are now also directly supported in V-REP. We however still recommend using only pure shapes for dynamic simulations.
  • Added a convex decomposition function (routines courtesy of Khaled Mamou)
  • Added one new regular API function: sim.convexDecompose.
  • The URDF importer is now in an advanced beta stage.


  • V-REP V3.0.0 (January 10th 2013)

  • V-REP is now open source! All source code of V-REP or any related item can be downloaded, modified and compiled. Make sure to read the licensing conditions.
  • V-REP comes now is several flavours:
  • V-REP PRO EDU (educational version. No limitation and Free). Can be used by hobbyists, students, teachers, professors, schools and Universities. Make sure to read the licensing conditions.
  • V-REP PRO (commercial version)
  • V-REP PLAYER (free player version)
  • Collada importer/exporter plugin
  • URDF importer plugin, courtesy of Ignacio Tartavull
  • Added 4 new regular API functions: sim.createForceSensor, sim.createProximitySensor, sim.createVisionSensor and sim.importShape.
  • Added a quick textures button to the shape properties: it allows for instance to quickly apply a "dirt" texture to several shapes, in order to make them appear more realistic.
  • New demo scene: proximitySensorDemo.ttt


  • V-REP V2.6.8 (December 2nd 2012)

  • Add-ons are now supported: they can run in the background, or be called as a function, when needed
  • Added sim.createDummy.
  • Textured shapes can now also be grouped
  • The bounding box of pure compound shapes can now also be reoriented
  • The shape dynamics properties dialog allows now specifying non-diagonal inertia matrices relative to a specific reference frame.
  • Shape grouping will now correctly compute the combined inertia matrix for the group.
  • Added 2 new regular API functions: sim.groupShapes and sim.ungroupShape.
  • Added more than 80 new functions, only available from the C/C++ interface, that extend functionality and allow faster data access.
  • Serialization version is now 16. Earlier files can still be loaded, but V-REP versions 2.6.7 and earlier cannot load this new fileformat.


  • V-REP V2.6.7 (September 20th 2012)

  • Added a new ROS service, and ROS subscriber type: simRosSetJointState and simros_strmcmd_set_joint_state. They allow to set several joints' states at the same time.
  • Added following ROS publisher/subscriber types (courtesy of Cedric Pradalier): simros_strmcmd_get_range_finder_data, simros_strmcmd_get_transform, simros_strmcmd_get_twist_status, simros_strmcmd_get_vision_sensor_info, and simros_strmcmd_set_twist_command.
  • Converted the simExtMTB plugin to a Qt project. Source files are located here. Refer to the section on plugins for details how to compile this plugin. The plugin binary is in the main directory.
  • Converted the mtbServer application to a cross-platform project. Source files are located here. The executable binary is in the main directory.
  • Added a project that demonstrates the Coppelia kinematics routines functionality.
  • An external editor for V-REP's embedded scripts can now be used. Refer to the user settings.
  • Additional texture mapping methods have been implemented: cylinder-, sphere-, or box-mapping. Refer to the texture dialog for details.
  • The linux version of V-REP comes now in 32 or 64 bit.
  • Added 2 new functions to handle object/joint motion from a threaded script: sim.rmlMoveToPosition and sim.rmlMoveToJointPositions


  • V-REP V2.6.6 (August 20th 2012)

  • The RosPlugin is now fully operational and offers 100 services, 30 publisher types and 25 subscriber types. The plugin is fully open source and can easily be adapted to various projects if needed. Have a look at the ROS tutorial for a quick start.
  • Integrated the Reflexxes Motion Library type IV via a plugin. Have a look at the related demo scene: "reflexxesMotionLibraryType4Demo.ttt"
  • Added 4 new API functions: sim.getObjectQuaternion, sim.setObjectQuaternion, sim.buildMatrixQ and sim.getQuaternionFromMatrix (internally V-REP used quaternions since always, but only Euler angles could be accessed)
  • Added an option to colorize items in the scene hierarchy, for quicker identification
  • New scene: "reflexxesMotionLibraryType4Demo.ttt"
  • New model: "kinect - closest point calculation.ttm"
  • Added a new tutorial: ROS tutorial.


  • V-REP V2.6.5 (July 7th 2012)

  • Fixed a few bugs related to the Linux/Mac version of the legacy remote API
  • Added a new toolbar button to handle object assembling/disassembling. The way two objects assemble via this toolbar button can be adjusted in the object common properties (Assembling button)
  • Added a first interface to ROS. This version is temporary and will be updated in next release


  • V-REP V2.6.4 (May 23rd 2012)

  • Serial port functions: sim.serialOpen, sim.serialClose, sim.serialSend, sim.serialRead and sim.serialCheck.
  • The serial port functionality is now also operational on the Mac and Linux platforms
  • Fixed a bug where icons would not appear on systems with an old or non-accelerated graphic card
  • Added a new integer parameter: sim.intparam_scene_unique_id
  • Added a new event callback message: sim_message_eventcallback_mainscriptabouttobecalled


  • V-REP V2.6.3 (April 10th 2012)

  • First release that is also available on the Linux platform (Ubuntu is preferred). The Mac and Linux versions are however still flagged as early beta releases
  • Added a new status bar
  • Reworked the coordinates and transformation dialog, as well as the method of moving object/items
  • Modified the way objects/items get selected when no key combination is used: objects get selected at mouse button release if the mouse didn't move. This makes it more convenient to navigate with the camera without always losing the object selection state
  • Added a checker background in the OpenGl-based custom UI edit mode
  • Added a new video compression library used by V-REP's video recorder, based on the FFmpeg library. Click here for related credits
  • The player version of V-REP has now been enabled to display the user settings dialog, and the layer selection dialog. Scripts can now also be edited from within the player version of V-REP


  • V-REP V2.6.2 (March 18th 2012)

  • Since this release, the concept of "simulator instances" has been abandonned for the concept of "scenes". Functionality basically stays same, but now matches the standard approach. An unlimited number of scenes can now be opened, also in the player version of V-REP
  • Tree elements in the scene hierarchy can now be drag-and-dropped onto other objects for convenient parent-child relationship building (similar to [Menu bar --> Edit --> Make last selected object parent] or [Menu bar --> Edit --> Make last selected object(s) orphan])
  • All scene hierarchy icons have been redesigned
  • All toolbar buttons have been redesigned
  • The scene hierarchy now also visualizes all opened scenes, and switching between scenes is achieved with a simple click
  • A new page selector was implemented, allowing to quickly visualize and select from all available pages of a given scene
  • A new scene selector was implemented, allowing to quickly visualize and select from all available opened scenes
  • The model browser has been reworked and now uses 24-bit colors for displaying model thumbnails
  • OpenGl-based custom UIs can now be saved and loaded separately, in a similar way as models are loaded /saved
  • Added 3 new API functions: simCloseScene, simLoadUI and simSaveUI


  • V-REP V2.6.1 (February 28th 2012)

  • First release that is also available on the Mac platform. The Mac release is however still a Beta release where several items are not yet fully supported.
  • Added an auto-save functionality. It can be turned on/off in the user settings dialog.
  • Fixed a bug in which V-REP would crash after an undo operation in certain conditions.
  • Color-coded objects in the dynamic content visualization mode.
  • Added a parameter to the user settings file (system/usrset.txt) that allows to adjust the GUI font size: guiFontSize_Win
  • Added a new integer parameter to detect the platform V-REP is running on: sim.intparam_platform
  • New model: "spring-damper.ttm"
  • New model: "motorbike.ttm"


  • V-REP V2.6.0 (January 27th 2012)

  • This release too underwent heavy internal changes in preparation for support of other platforms (Mac and Linux). Please inform us as soon as possible in case of unexpected behaviour with this release. Thanks!
  • All dialogs and user interfaces have been completely rewritten/redesigned/reorganized. They now all rely on the Qt framework
  • The application main loop (i.e. the default main client application) has been simplified and prepared for separate GUI thread functionality. The rendering of the scene is now handled internally. Following functions were added: simRunSimulator, simGetMainWindow, sim.loadModule, sim.unloadModule. Following functions were removed: simLaunchSimulator, simEndSimulator, simRenderScene, simHandleWindowMessages, simGetInstanceIndex, simGetVisibleInstanceIndex, simSwitchToInstance, simEmptyScene, simRegisterModuleName and simRegisterEventCallback.
  • Added following values: sim_message_eventcallback_guipass, sim_message_simulation_start_resume_request, sim_message_simulation_pause_request, sim_message_simulation_stop_request, sim.intparam_qt_version, sim.floatparam_rand. Following value is now also writable: sim.boolparam_console_visible
  • Adjusted/adapted all V-REP plugins: since this release, plugins should dynamically bind to the V-REP library. The task is simplified with two files distributed with V-REP: "simLib.h" and "simLib.cpp". This reduces compatibility problems linked to working with various compilers. Old plugins should be slightly modified: it is recommended to adjust old plugins in a similar way as was done for the "BubbleRob" plugin project, located in the "c_examples" directory of V-REP's installation directory. If you are having difficulties adjusting your plugin code, please contact us for assistance.
  • Fixed a bug linked to the click-and-select functionality.
  • Added several pre-configured simulation settings (e.g. physics engine settings or simulation time step settings). The user can conveniently modify them in the toolbar.
  • Added an option for turning dialogs semi-transparent when they loose focus.
  • Added a toolbar button to quickly visualize a scene's dynamic content (enabled during simulation only)
  • Added a plugin that allows to interface joysticks: simExtJoystick.dll. Like with almost all V-REP plugins, the source code can be requested if not already distributed with V-REP.


  • V-REP V2.5.12 (December 6th 2011)

  • This release too underwent heavy internal changes in preparation for support of other platforms (Mac and Linux). Please inform us as soon as possible in case of unexpected behaviour with this release. Thanks!
  • Improved the undo/redo functionality: undo points are now set 10-20 times faster as in previous releases, which greatly improves scene edition with large scenes.
  • The undo/redo functionality can now also be accessed via the ctrl-z and ctrl-y keys
  • Changed the splash screen and the about dialog
  • Since this release, it is not possible anymore to run several simulations in parallel (in different instances). This limitation greatly simplifies programming of plugins. Most old plugins should still be working, but some might need some simple adjustments. *Refer to the section below for quick instructions of modifications required.
  • simGetInstanceIndex, simGetVisibleInstanceIndex and simSwitchToInstance are declared deprecated and should not be used anymore.
  • Simplified and improved the plugin event messages
  • Removed following event callback messages: sim_message_object_added_or_removed, sim.message_object_selection_changed, sim.message_scene_loaded, sim_message_menu_item_selected, sim_message_eventcallback_objectscaled, sim_message_eventcallback_objectabouttobeerased, sim_message_eventcallback_objecterased and sim_message_eventcallback_objectcreated. The same functionality can be obtained with the improved sim_message_eventcallback_instancepass event callback message. This results in faster loading operation for large scenes, and simplifies programming of plugins. *Refer to the section below for quick instructions of modifications required.
  • Renamed rendering sensors. They are now called vision sensors, and all related API functions, API constants or references have been renamed. The old API functions and constants are kept operational for backward compatibility.
  • Added an option to allow for local lights (i.e. lights activated only with flagged cameras). Refer to the light dialog, the camera dialog and the vision sensor properties.
  • Added a new toolbar button to automatically adjust the main view to the scene, or selected objects
  • Added a new API function: sim.cameraFitToView (click here for a simulation that illustrates what kind of camera movement can be achieved with that function)
  • Added a new API function: sim.isHandle.
  • Added following API functions: sim.persistentDataWrite and sim.persistentDataRead.
  • Added a new item in the object common properties ("ignored for view-fitting")
  • New model: "auto fitting camera.ttm"
  • Removed scene: "youBotDemo.ttt"

  • *Most old plugins will not need any modification. It is however recommended to adjust the plugin's "simMessage" function in a similar way as was done for the "BubbleRob" plugin project, located in the "c_examples" directory of V-REP's installation directory. If you are having difficulties adjusting your plugin code, please contact us for assistance.


    V-REP V2.5.11 (November 13th 2011)

  • This is a bug fixing release. In version 2.5.10, when opening dialogs, V-REP could crash or freeze. This was fixed


  • V-REP V2.5.10 (October 21st 2011)

  • This release underwent heavy internal changes in preparation for support of other platforms (Mac and Linux). Please inform us as soon as possible in case of unexpected behaviour with this release. Thanks!
  • Removed the object common property visible. This option was a little bit confusing, and now objects can still be made invisible by moving them into a hidden layer
  • Removed the object common property wireframe
  • Added a wireframe option in the shape properties
  • Removed the shape tracing option in order to simplify the shape properties. Shape tracing can still be achieved with appropriate function calls (e.g. see the "tracer" model)
  • simResetTracing and simHandleTracing API functions were declared deprecated
  • The shape properties were further simplified by encapsulating the shape calculation structure parameters in a separate dialog
  • Added new object parameter IDs
  • Following API functions are now also available from the Lua side: simAddSceneCustomData, simGetSceneCustomData, simAddObjectCustomData and simGetObjectCustomData
  • New model: "laser pointer.ttm"
  • New model: "tracer.ttm"
  • New model: "custom data viewer.ttm"
  • New model: "reference frame.ttm"
  • New model: "Accelerometer.ttm"
  • New model: "GyroSensor.ttm"


  • V-REP V2.5.9 (September 3rd 2011)

  • Added support for skyboxes
  • Added an option to hide all edges in a specific view (view popup menu)
  • Added an option to display thin or thick edges in a specific view (view popup menu)
  • Added an option to hide the information and status text when recording a movie
  • Added two entries in the configuration file ("usrset.txt") that allow to specify the desired resolution for a movie recording. ("movieRecordingResolutionX" and "movieRecordingResolutionY")
  • Added a light concrete texture to all floors
  • New model: "5mX5m metallic floor.ttm"
  • New model: "5mX5m concrete floor.ttm"
  • New model: "kinect.ttm" (there is already a kinect model for interfacing with the real device. This model is just a simulated device)
  • New model: "blue sky skybox.ttm"
  • New model: "felt pen.ttm"
  • New model: "ant hexapod.ttm"


  • V-REP V2.5.8 (July 20th 2011)

  • Improved the sim.addParticleObject function to also support linear and quadratic drag parameters
  • New API functions: sim.getArrayParam and sim.setArrayParam
  • Temporarily removed following commands to facilitate a move towards other platforms: simAttachCustomMenu, simRemoveCustomMenu, simCreateCustomToolbar, simSetCustomToolbarState, simRemoveCustomToolbar, simGetWindowMessage, simProcessWindowMessage
  • Removed the "SimpleCustomClientApplication" project files
  • Added more fog parameters
  • Added new int parameters: sim.intparam_infotext_style and sim.intparam_settings
  • Added new array parameters: sim.arrayparam_gravity, sim.arrayparam_fog, sim.arrayparam_fog_color, sim.arrayparam_background_color1, sim.arrayparam_background_color2 and sim.arrayparam_ambient_light
  • Added new bool parameters: sim.boolparam_display_enabled, sim.boolparam_infotext_visible, sim.boolparam_statustext_open and sim.boolparam_fog_enabled
  • Added new object parameter IDs
  • Added a new vision sensor filter component: blob detection
  • New joints added to the scene are in dynamic mode by default since this release
  • Added two entries in the configuration file ("usrset.txt") that allows to correct display problems with specific graphic cards / systems: "renderingSurfaceVShift" and "renderingSurfaceVResize"
  • New scene: "blobDetectionWithPickAndPlace.ttt"
  • New scene: "youBotAndHanoiTower.ttt
  • New model: "fast simulation mode.ttm"
  • New model: "water surface.ttm"
  • New model: "ABB IRB 360.ttm"
  • New model: "Blob detection camera.ttm"
  • Removed scene: "camFollower.ttt"
  • Removed scene: "deltaFKDecomposed.ttt"
  • Removed scene: "lineTracer-nonThreaded.ttt"
  • Removed scene: "parallelManipulator1.ttt"
  • Removed scene: "parallelManipulator2.ttt"
  • Removed scene: "pickAndPlace.ttt"
  • Removed scene: "mobileRobotDr20.ttt"
  • Removed scene: "transmission.ttt"


  • V-REP V2.5.7 (June 25th 2011)

  • Since this release, models do not required to have a dummy object as base object anymore (any object can be "model base" now). This tremendously improves the way models can be combined, with much less effort (e.g. just select a gripper, then a robot, and click [Menu bar --> Edit --> Make Last Selected Object Parent]: the resulting model is fully operational)
  • Reworked almost all models to take advantage of the improved model combination possibility (see here above)
  • Reworked, actualized and improved the "robot language interpreter integration" tutorial
  • Added an application and project files that allow retrieving data from the kinect device ('kinectServer')
  • New tutorial: "External controller tutorial"
  • New scene: "robotLanguageControl.ttt"
  • Removed model: "MTA robot.ttm"
  • New model: "MTB robot.ttm"
  • New model: "suction pad.ttm"
  • New model: "lumibot.ttm"
  • New model: "Standing Bill.ttm"
  • New model: "kinect.ttm"


  • V-REP V2.5.6 (June 14th 2011)

  • Extended the functionality of the functions related to signals. Signals can now be local (to a given simulator instance) or global
  • Textures can now also be applied using texture coordinate information loaded during an import operation
  • Added a new integer parameter: sim.intparam_visible_layers
  • Added a new bool parameter: sim.boolparam_shape_textures_are_visible
  • New scene: "controlTypeExamples.ttt"
  • Bug correction (crash with spherical joints, and joints involved in loop closure with the ODE engine)


  • V-REP V2.5.5 (June 3rd 2011)

  • New API commands to build transformation interpolations: sim.getRotationAxis and sim.rotateAroundAxis
  • New API command to launch executables: sim.launchExecutable
  • New API command to read the force/torque along/about a joint's z-axis: simJointGetForce
  • New model: "signal monitor.ttm"
  • When simulation stops, then the initial parenting will try to be restored
  • Added a new integer parameter: sim.intparam_dynamic_engine
  • Added a new recordable data stream for graphs: "Joints: force or torque"
  • Number of active lights not limited to 8 anymore (provided that the GPU also supports more than 8 lights)
  • Folders now also appear and are clickable in the lower part of the model browser window


  • V-REP V2.5.4 (April 22nd 2011)

  • Completely reworked user manual, running in web-browser now. Fixed all broken links.
  • New V-REP plugin "simExtWii.dll" that exports 4 new commands to interact with a wiimote device: simWii.start, simWii.stop, simWii.set and simWii.get
  • Multiple simultaneous script edition is now suppored
  • New API command to apply non-central forces: sim.addForce
  • New API command to temporarily forbid thread switches: sim.setThreadAutomaticSwitch
  • 2 API commands were removed: simGetInEditionScript and simCloseEditionScript
  • New data stream type: simulation pass execution time
  • Switched to the most recent Bullet engine V2.78beta (rev2338)
  • New model: "Working Bill.ttm"
  • Several new models of panes for industrial manufacturing cells
  • New model: "5mX5m wooden floor.ttm"
  • New model: "Sitting Bill.ttm"
  • Removed scene "hovercraft.ttt"
  • Removed scene "trackedRobots.ttt"
  • New scene: "inverseKinematicsOf144DoFManipulator.ttt"


  • V-REP V2.5.3 (March 20th 2011)

  • Extended the functionality of the sim.unpackInt32Table and sim.unpackFloatTable functions
  • Extended the functionality of the sim.adjustView function
  • New API command to control the show state of an auxiliary console window: sim.auxiliaryConsoleShow
  • New API commands to set and retrieve various values linked to objects (will be extended on a regular basis): sim.getObjectInt32Param, sim.setObjectInt32Param, sim.getObjectFloatParam, sim.setObjectFloatParam, sim.getObjectStringParam and sim.setObjectStringParam
  • New API command to adjust the number of displayed frames during simulation: simSetSimulationPassesPerRenderingPass
  • New V-REP plugin "simExtCam.dll" (using "escape.dll") that exports 4 new commands to acquire webcam images: simCam.start, simCam.stop, simCam.info and simCam.grab
  • New model: "plugin enumerator.ttm"
  • New model: "Mesa SR4000.ttm"
  • New model: "Snake.ttm"
  • New model: "Walking Bill.ttm"
  • New model: "wiimote.ttm" (the associated required plugin will be shipped in next release)
  • New model: "Barrett Hand.ttm"
  • New model: "K-Junior.ttm"
  • New model: "webcam.ttm"
  • Corrected a bug where sim.handleModule would generate an additional unexpected event (sim_message_eventcallback_modulehandle)
  • Model names in the model browser are now displayed on 2 lines if required
  • New models: conveyor belt models were added that perform more efficiently
  • Updated the conveyor belt tutorial with an alternative modeling method that performs more efficiently
  • Removed scene "mapBuilding.ttt"
  • New scene "environmentMapping.ttt"
  • New scene "BarrettHandPickAndPlace.ttt"
  • Added a mechanism to adjust the Bullet collision margin overall, or on an object-basis


  • V-REP V2.5.2 (February 22nd 2011)

  • Heightfields are now supported and can be imported from *.tga, *.csv or *.txt files
  • New API command to create heightfields: sim.createHeightfieldShape
  • New API commands to handle views and floating views: sim.floatingViewAdd, sim.floatingViewRemove and sim.adjustView
  • New model: 10m x 10m terrain.ttm
  • Updated the quadricopter model by adding a floor and a front camera
  • Updated the helicopter model by adding a front camera


  • V-REP V2.5.1 (February 10th 2011)

  • Corrected bug in API function sim.getObjectOrientation (when relativeTo argument was not -1, results were wrong)
  • New model: ABB IRB 140.ttm
  • New model: Omnidirectional Platform.ttm
  • New model: 1.0 x 0.2 conveyor.ttm
  • New model: Quadricopter.ttm
  • New model: helicopter.ttm
  • Extended the functionality of following 2 API functions: sim.getScriptSimulationParameter & sim.setScriptSimulationParameter (a parameter can now be a string containing any byte value)
  • Changed the default value of last argument of API function simMoveToJointPositions. Default is now 1.
  • New tutorial "Conveyor belt/caterpillar"
  • Corrected a bug in the propeller.ttm and Air jet.ttm models


  • V-REP V2.5.0 (January 16th 2011)

  • New API commands to import/export meshes: sim.importMesh and sim.exportMesh
  • New API commands to create shapes and to extract the mesh of a shape: sim.createMeshShape, sim.createPureShape and sim.getShapeMesh
  • New API command to create joints: sim.createJoint
  • API commands simGetShapeVertex and simGetShapeTriangle are declared deprecated
  • Scene hierarchy now always contains a double-clickable "World" object. This replaces the environment toolbar button which was removed
  • New API constant: sim.boolparam_scene_and_model_load_messages
  • New API constants: sim_message_eventcallback_bannerclicked & sim.message_bannerclicked
  • New API constants for banner support
  • New model: object locator.ttm
  • Updated the default main client application vrep.exe, and the example main client application project
  • Extended the lifetime of license keys (key version x.y.z now works for all V-REP versions up to x.y+1.z-1)


  • V-REP V2.4.15 (December 20th 2010)

  • New API command to set the maximum force/torque a joint can exert: sim.setJointForce
  • New API commands to create and handle auxiliary console windows: sim.auxiliaryConsoleOpen, sim.auxiliaryConsolePrint, sim.auxiliaryConsoleClose
  • The Lua extension library LuaSocket is included in the distribution
  • Corrected a small bug that would affect the icons appearance on some graphic cards
  • New scene: socketAndTubeCommunicationExample.ttt


  • V-REP V2.4.14 (December 11th 2010)

  • Removed an OpenGL instruction that caused opengl driver crashes on some graphic cards (including VMWare's openGL driver "vmwogl32.dll")


  • V-REP V2.4.13 (December 8th 2010)

  • Warning message appears now when a scene was not saved (when leaving or discarding a scene)
  • Improved and corrected the BubbleRob tutorial
  • New dongle drivers
  • New API commands to handle particles: sim.addParticleObject, sim.removeParticleObject and sim.addParticleObjectItem
  • New API command to retrieve information on contacts: sim.getContactInfo
  • New model: contact display.ttm
  • New model: AirJet.ttm
  • New model: Propeller.ttm
  • New model: Fire.ttm
  • New model: smoke.ttm
  • New model: Wheel.ttm
  • New model: Caster wheel.ttm
  • New model: Omniwheel 45deg A.ttm
  • New model: Omniwheel 45deg B.ttm
  • New model: Hokuyo URG 04LX UG01.ttm
  • New scene: hovercraft.ttt


  • V-REP V2.4.12 (October 30th 2010)

  • Corrected a small bug in the sim.moveToJointPositions API command applied to joints in dynamic mode
  • New API commands: sim.setShapeColor, sim.resetDynamicObject and sim.setJointMode
  • New model: YouBot.ttm
  • New model: e-puck.ttm
  • New scene: youBotDemo.ttt
  • New scene: e-puckDemo.ttt


  • V-REP V2.4.11 (October 13th 2010)

  • Dual physics engine support: next to the Bullet physics library, the Open Dynamics Engine (ODE) is now also supported
  • New model: Asti.ttm
  • New Model: Robbie.ttm
  • All models and scenes have been checked/adjusted for dual physics engine support
  • New scene: ImageProcessingExample.ttt


  • V-REP V2.4.10

  • Minor bug fixes


  • V-REP V2.4.9

  • New API commands: sim.setObjectSpecialProperty and sim.getObjectSpecialProperty
  • Model visibility can now also be overridden
  • New option "ignored during path planning" for the "collidable" and "measurable" property
  • Improved path edition capabilities
  • Bug fix in the path planning module
  • New model: path following human
  • New model: path planning and following human


  • V-REP V2.4.8

  • Edge following is enabled by default in the edge edit mode
  • New demo scene: Katana robot with twisted cable simulation
  • New demo scene: ABB Fanta can challenge
  • New demo scene: practical path planning
  • New API commands: sim.setExplicitHandling and sim.getExplicitHandling
  • Improved object manipulation and snapping to grid
  • Automatic rendering order calculation for translucid shapes
  • New OpenGl-based custom UI option: "display only when associated object is selected"
  • New edit menu item: "Replace selected objects with a copy of last selected object"
  • New model browser window with drag-and-drop functionality
  • New models organized in a model library
  • New option for proximity sensors: Occlusion check
  • New option for ray-type proximity sensors: randomized detection
  • Option to override specific properties for whole models
  • New API commands: sim.setModelProperty and sim.getModelProperty


  • V-REP V2.4.7

  • New API command: sim.getStringParam
  • Option to create pure shapes with selected triangles in the triangle edit mode
  • Improved demo scene: Welding robot with flexible cable simulation
  • New tutorial: Inverse kinematics
  • New tutorial: Importing and preparing rigid bodies
  • New tutorial: Hexapod
  • New tutorial: Robot language interpreter integration


  • V-REP V2.4.6

  • Various minor bug fixes
  • New demo scene: Roller-Walker.ttt


  • V-REP V2.4.5

  • Improved sim.sendData and sim.receiveData commands
  • New API command: sim.getVelocity
  • New API command: sim.addForceAndTorque
  • New demo scene: ACM_R5H.ttt
  • New demo scene: Hexapod.ttt
  • Bug correction in simGetPosition, simSetPosition, simGetOrientation and simSetOrientation commands
  • Antialiasing option for edges. Disabled by default


  • V-REP V2.4.4

  • Various minor bug fixes


  • V-REP V2.4.3

  • Texture support for shapes and OpenGl-based custom UIs. Textures can be static or dynamic


  • V-REP V2.4.2

  • First public release in March 2010


  • licensing

    Licensing

    CoppeliaSim Player, CoppeliaSim Edu, CoppeliaSim Pro and other components (e.g. plugins) are licensed according to following scheme (see further below for the license texts):



    CoppeliaSim Pro license

    CoppeliaSim Pro commercial license. Contact us for details.



    CoppeliaSim Edu license

    CoppeliaSim Edu educational license:

    -------------------------------------------------------------------

    The CoppeliaSim Edu educational license applies ONLY to educational entities composed by following people and institutions:

    1. Hobbyists, students, teachers and professors

    2. Schools and Universities

    Educational entities do NOT include companies, research institutions, non-profit organisations, foundations, etc.

    An educational entity may use CoppeliaSim Edu under following conditions:

    1. Usage should be non-commercial.

    CoppeliaSim Edu is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. In no event will the original authors and Coppelia Robotics AG be held liable for any injuries, death, data loss, damages, loss of profits or any other loss while using or misuing this software.

    -------------------------------------------------------------------



    Geometric/kinematics plugin commercial license

    Geometric/kinemtics plugin commercial license. Contact us for details.



    Geometric/kinematics plugin educational license

    Geometric/kinematics plugin educational license:

    -------------------------------------------------------------------

    The Geometric/kinematics plugin educational license applies ONLY to educational entities composed by following people and institutions:

    1. Hobbyists, students, teachers and professors

    2. Schools and Universities

    Educational entities do NOT include companies, research institutions, non-profit organisations, foundations, etc.

    An educational entitiy may use, modify, compile and distribute the modified/unmodified plugin under following conditions:

    1. Distribution should be free of charge.

    2. Distribution should be to educational entities only.

    3. Usage should be non-commercial.

    4. Altered source versions must be plainly marked as such and distributed along with any compiled code.

    5. When using the plugin in conjunction with CoppeliaSim, the "EDU" watermark in the CoppeliaSim scene view should not be removed.

    6. The origin of the plugin must not be misrepresented. you must not claim that you wrote the original software.

    The plugin is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. In no event will the original authors and Coppelia Robotics AG be held liable for any injuries, death, data loss, damages, loss of profits or any other loss while using or misuing this software.

    -------------------------------------------------------------------



    acknowledgments

    Acknowledgments and credits

    V-REP / CoppeliaSim was developed during several years, however, without the contributions, help, support, advice, or generosity of many people, it wouldn't have become what it is today. I wish to thank and acknowledge the contributions in various forms of the following people, group of people or organizations:

  • Nobuto Matsuhira (Toshiba Corporate R&D center), for the enormous support, belief in me, and kindness he always showed me
  • Fumio Ozaki (Toshiba Corporate R&D center), for the patience, trust and freedom he gave me
  • Hoimin Jeong (Cubictek Co. Ltd), for his support and belief in me even in difficult situations
  • The Lua development team (PUC-Rio, http://www.lua.org), for the free Lua interpreter they provide. See the license.
  • Nokia corporation, the Qt GUI Toolkit development team and all other contributors, for the Qt GUI Toolkit library they provide. See the license.
  • Digia Plc and/or its subsidiary(-ies), and all other contributors, for the Qt Property Browser they provide. See the license.
  • Antonio Escano Scuri and Mark Stroetzel Glasberg for the free WebBook framework they provide. See the license.
  • Diego Nehab (http://w3.impa.br/~diego/software/luasocket/home.html), for the free LuaSocket extension library. See the license.
  • Erwin Coumans (http://www.bulletphysics.org), for the free Bullet physics library he provides. See the license.
  • Russel L. Smith (http://www.ode.org), for the free physics library he provides. See the license.
  • Daniel Fiser for his collision routines (libccd, used with ODE). See the license.
  • Pierre Terdiman for his collision routines (OPCODE, used with ODE).
  • Francisco Leon Najera for his collision routines (GIMPACT, used with Bullet). See the license.
  • The people and community behind the Open Motion Planning Library (OMPL). See the license.
  • Khaled Mamou, for the excellent convex decomposition routines he provides (HACD and V-HACD). See the license.
  • Brad Barber, for the efficient Qhull routines he provides. See the license.
  • François Conti, for the CHAI3D library he provides. See the license.
  • The Scintilla development team (http://www.scintilla.org), for the free source code editing component they provide. Since CoppeliaSim 2.6.0, the Scintilla library is used via commercial QScintilla.
  • Lee Thomason, for his nice and compact tinyxml routines. See the license.
  • Marcus Geelnard for the Basic Compression Library he provides (http://bcl.comli.eu/home-en.html). See the license.
  • Toni Ronkko for the Dirent interface for Microsoft Visual Studio he provides (https://github.com/tronkko/dirent). See the license.
  • Martin Courchesne and SimWat for the initial Vortex plugin for CoppeliaSim they provided.
  • CM Labs for the free version of their Vortex physics engine (Vortex Studio), used in CoppeliaSim's Vortex plugin.
  • Sean Barrett for his image loading routines he provides.
  • Jari Komppa for the ESCAPI library that is wrapped in the webcam plugin for CoppeliaSim (Credit is given when the plugin is used)
  • Julio Jerez and Alain Suero, for the Newton plugin for CoppeliaSim they provide. See the license.
  • René Nyffenegger, for the base64 source code he provides. See the license.
  • The programming community on http://www.gamedev.net and http://www.codeproject.com for the many invaluable advices, tips and code snippets
  • The developers of the FFmpeg library and Andrew Voznytsa who wrote a library for CoppeliaSim that offers video compression functionality based on FFmpeg. See the FFmpeg license.
  • The Computer Graphics Group at RWTH Aachen, who developed the OpenMesh library. The library is used in the CoppeliaSim plugin simExtOpenMesh. See the OpenMesh license.
  • The team behind the Assimp library. The library is used in the CoppeliaSim plugin simExtAssimp. See the Assimp license.
  • Torsten Kroeger and Reflexxes GmbH, for providing their Reflexxes Motion Library type II as a CoppeliaSim plugin. See the RML Type II license.
  • Lars Berscheid, for providing his Ruckig Online Trajectory Generator as a CoppeliaSim plugin. See the Ruckig license.
  • Chris Hecker for his mass properties calculation algorithm. See the related license.
  • Christian Dippel, my cousin, who helped me in many ways (CAD models, flyer preparation, etc.)
  • Michele Guarnieri, Paulo Debenest and Naho Guarnieri from Hibot, who are not only my partners in Business, but also friends.
  • Lyall Randell who not only gave me permission to use his CAD models, but also created additional ones especially for CoppeliaSim.
  • Eric Rohmer who is a thorough CoppeliaSim tester and an "idea machine". He is also the creator of several models and plugins for CoppeliaSim (e.g. simExtWii or simExtJoystick)
  • Svetlin Penkov for creating a first ROS plugin, and for being always available for ROS-related questions.
  • Ignacio Tartavull for creating a first URDF plugin, and for being extremely helpful at the right time.
  • Maciej Szymanski, Ibrahim Abd Elkader, Mahendra Koteshwar and Asanka Wickramasinghe for various tasks in relation with CoppeliaSim porting and legacy remote API bindings
  • Julien Tharin for various tasks in relation with CoppeliaSim porting
  • Preben Hjornet for creating precise simulation models of extremely complex robots
  • "gl.tter" for the WiiYourself! wiimote code (http://gl.tter.org) wrapped in the wiiMote plugin for CoppeliaSim (Credit is given when the plugin is used).
  • Alex Doumanoglou for writing the Collada importer/exporter plugin.
  • Cedric Pradalier for extending the RosPlugin with useful publisher/subscriber types.
  • Andreas Geiger, for the LIBICP he provides. See the license.
  • Hung Pham, Quang Cuong Pham and others, for the TOPP-RA library they provide. See the license.
  • Diego Daniel Santiago for writing a shared memory communication plugin, and the plugin for Simulink-CoppeliaSim communication.
  • The developers of the POV-Ray raytracer, Persistence of Vision Raytracer Pty. Ltd. POV-Ray uses the GNU AFFERO GENERAL PUBLIC LICENSE, a copy of which is included in the software package.
  • The developers of the CGAL library, which is used by the simExtSurfRec plugin. See the license.
  • The developers of LIBIGL, which is wrapped in the IGL plugin. See the license.
  • The developers of ZeroMQ, which is wrapped in several CoppeliaSim plugins, and used in several external applications. See the license.
  • The developers of WebSocket++, which is wrapped in the WS plugin. See the license.
  • The developers of three.js, which is user by CoppeliaSim's external viewer. See the license.
  • All the developers behind the OpenCV library, which is used by the simExtIM plugin. See the license.
  • David Heiko Kolf, for his JSON module for Lua. See the license.
  • Francois Perrad, for his MessagePack module for Lua. See the license.
  • Takatoshi Kondo and several other contributors, for their MessagePack code for C/C++. See the license.
  • Bastian Bechtold, for his MessagePack code for Matlab. See the license.
  • The people behind the MessagePack code for Java. See the license.
  • Kim Alvefur, for his CBOR code for Lua. See the license.
  • Sean Conner, for his CBOR library for Lua. See the license.
  • Federico Ferri, for creating a whole series of plugins for CoppeliaSim.
  • Stephen James (Imperial College London) for his PyRep toolkit for robot learning research, and his OpenGL3 renderer plugin.
  • Emanuel Eichhammer, for his QCustomPlot used in the custom UI plugin. See the license.
  • Benjamin Navarro, for his code in the legacy remote API, which enables shared memory communication instead of socket communication.
  • Following people for noticing bugs, reporting problems, suggesting solutions or new ideas, providing patches, code improvements, or simply helping out: Guillermo Presti, Matthias Fueller, Paul Fudal, Matthieu Lapeyre, Alberto Fanjul, Laurens Philippo, Vadim Liventsev, Kirill Makukhin, Patrick Bouffard, Pouya Mohammadi, Luca Marchionni, Barrett Ames, Arnaud Leleve, Geerten Doornenbal, Nikolaus Wittenstein, Ayberk Ozgur, Qi Wang, Giordano, Karl Robillard, Brian Yeomans, Kiyoshi Irie, Ulrich Schwesinger, Peter Mačička, Inkyu Sa, David Butterworth, Marco Cognetti, Xinyu Zhang, Jaqueline Gallardo, Serkan ÇİÇEK, Taehoon Koo, He Tao, Yusuke Ishizawa, Billy Newman, Rüdiger Dehmel, Roberto Marino, Renaud Detry, Roband, Hendrik Wiese, Matthias Schindler, George Moustris, Marco Bellaccini, Klaus Raizer, Paulo Gurgel, Stéphane Magnenat, Philipp Krüsi, Pascal Gohl, Gianpaolo Gonnelli, Felix Herrmann, Edgar Virga, Josep Tormo Costa, Gaël Ecorchard, Massimo Cefalo, Robert Lang, Marc Durvaux, Alexander Rietzler, Matt Derry, Arne Hitzmann, Sergi Foix, Daniel Morberg, Andreas Kuhner, Gerold Huber, Danilo Vasconcellos Vargas, Spencer Krause, Daniel Kuhner, Filip Jares, Luigi Ferri, Michaela Richter, Daniel Lechner, Sven Knüppel, Steve Nguyen, Jonas Sperling, Roberto Guzman, James Besancon, Andrew Vardy, Bipeen Acharya, Fred Gisa, Simon D. Levy, Leopoldo Armesto, Rodrigo Moreno Garcia, Hanna Kurniawati, Dimitri Klimenko, Joshua Mun Song, Vinay Yadav, Thomas Estier, Matthias Imle, Rosé Rosado, Soner Ulun, Reza Mahjourian, Ben Allan, Riccardo Spica, Giovanni Claudio, Guenter Schreiber, Antoine Rennuit, Francois Conti, Sébastien Granges, Patrick Helmer, Eva Alves Costa, Lucian Cucu, Sigurd Villumsen, Andrea Censi, Pierre Rouanet, Leander Hille, Christoph Hügle, William Harrison, Scott Drew Pendleton, Jan Dentler, Raimund Krenmüller, Anuraj Rajendraprakash, Ilya Nemihin, Ángel Luis Jiménez García, Leander Hille, Pierre Rouanet, Kenichi Hara, Ilya Nemihin, Federico Ferri, Michael Michalik, Martin Pecka, Nicola Piccinelli, Kshitij Tiwari, Victor Gomez, Parker Owan, Yuki Suga, Muhammad Umer Huzaifa, Marshall Floyd, Augusto Gandia, Pierre Jacquot, Gurvan Le Bleis, Andreu Vidal, Nicola Di Pol, Tobias Groll, Wu Xiaojun, Karol Mocniak, Ana Lucia, Ricardo Azambuja, Anto Ronson, Graeme Neff Wilson, Minson Lee, Tiago Malheiro, Andrew Hundt, Ahmed Yacine, Matthias Ploner, Indranil Sur, Sung Kyun Kim, Rik Timmers, Matthew Veres, Korolyov Alexei, Daniel Angelov, Mohammed Talha, Bartolomeo Della Corte, Scott Hissam, Mark Fink, Hao Wang, Matias Nitsche, Ndivhuwo Makondo, Yu Zhang, DeKita G. Moon, Paul Santiago Tumbaco Casa, Tobias Benz, Rodrigo Moreno Garcia, Arjun Narayanan, Sven Schweigler, Nicola Battilani, Mark Edmonds, Benno Timmermann, Cándido Otero Moreira, Justin Yim, Allen Zhu, Leo Koppel, Ravi Prakash Joshi, Sina Radmard, Sai Vemprala, Waleed El-Badry, James Barger, Gonzalo Casas, Metehan Doyran, Arif Rahman, Jason Cachrane, Steffen Hemer, Fangyi Zhang, Filipe Rocha, virgile Daugé, Riccardo Spica, Florian Golemo, Kevin M. Lynch, Frank C. Park, Jacob Huesman, Matthew Veres, Cándido Otero, Leon Masopust, Michael Tong, Zhengxing Yang, Thomas Gurriet, Lenka Pitonakova, Hervé Frezza-Buet, Justus Rijke, Stefan Müller, Julien Lechalupe, Tristan Gahler, Robert Peck, William Jones, Benjamin Erdemann, Boris Bogaerts, Ulrich Viereck, Amdrei Florea, Catalin Buiu, Joachim Haensel, Julian Mayer, Jacob Smith, Mohsen Moradi Dalvand, Simon Birrell, Mathias Thor, Jedrzej Orbik, Liu Dong, Mark Hartenstein, Alexander Oliva, Claudio Gaz, Simon Birrell, Sahil Sharma, Adrian Schoisengeier, Rémi Lux, Kilian Freitag, Maël Hörz, Jakub Turaj, Rieky Barady, Jian Ye, Jaime Boal, Pável Axel Mc Campos Peña, Patrick Gruener, Thomas Wilmotte, Lorenzo Romanini, Johan Relefors, Pablo Bustos, Sonny Tarbouriech, Aleksander Sil, Arturs Paugurs, Wei Wei, David Page, Leopoldo Armesto, Ayush Patel, Cameron Kabacinski, Francisco Marin, Kevin Thomas, Nikita Aigner, Charles Han, Shai Levy, Bobovsky Zdenko, Salvatore Sessa, Jakob Ambsdorf, Hayato Amaike, Nathan Kocherhans, Alex Wuqi Zhang, René Simon, Yongdong Wang, Andrés Faíña, Davide Scorza, Jovan Sumarac, Alexander Oliva, Luigi Ascione, Rui Li, Patrick Grüner, Andrés Faíña, Michal Mareš, Kat Styles Wood, David Paulius, Pranav A. Bhounsule, Davide Scorza, Amirhossein Afkhami Ardekani, Roman Horshkov, Volker Kühn, Artem Shishkin... We know we forgot many many people, also significant ones... please let us know!
  • I also wish to thank following people for the inspiration they provided in various fields through their publications, books or other means:

  • J. J. Kuffner Jr., S.M. LaValle, L. Sciavicco, B. Siciliano, S. Gottschalk, M. C. Lin, D. Manocha, T. Akenin-Moeller
  • Finally I am really grateful to all the people and organizations who/that were kind enough to let me use their created CAD designs and models:

  • ABB. There is however no link between ABB and Coppelia Robotics
  • KUKA Laboratories GmbH
  • SICK AG
  • Hibot
  • K-Team
  • Cubictek
  • Neuronics
  • Aldebaran
  • IniLabs
  • Robotiq
  • Kinova Robotics
  • Universal Robots
  • Rethink Robotics
  • Trossen Robotics
  • Adept Technology
  • Force Dimension
  • On Robot ApS
  • EVOL
  • Bejade Choy, Farkas Gergo, Barry van de Laar, Lucia Teglas, Casper Christensen, Andrew Alexander, Kazuyuki Shigeto, Joost a.k.a. J-m@n, Bjorn Kilen, Andrés San Millán Rodriguez, Mey Lean Kronemann, Marco Cognetti, Tesuno Tokisin.
  • Large portions of CoppeliaSim source code is copyrighted by Coppelia Robotics AG and Robot Nordic ApS. For details see Coppelia Robotic's source code repositories. See also this licensing overview page.


    Marc Andreas Freese, founder and CEO, Coppelia Robotics AG


    License of the Lua script interpreter

    License for Lua 5.0 and later versions

    Copyright © 1994-2008 Lua.org, PUC-Rio.

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


    License of the WebBook framework

    Copyright 1994-2009 Tecgraf / PUC-Rio.

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


    License of the LuaSocket extension library

    License for LuaSocket 2.0.2

    Copyright © 2004-2007 Diego Nehab. All rights reserved.

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


    License of the Bullet Physics Library

    Bullet Continuous Collision Detection and Physics Library

    Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/

    This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

    1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.

    2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.

    3. This notice may not be removed or altered from any source distribution.


    License of the Open Dynamics Engine

    Open Dynamics Engine

    Copyright (c) 2001-2004, Russell L. Smith.

    All rights reserved.

    Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

    Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

    Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

    Neither the names of ODE's copyright owner nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


    License of the Libccd routines

    * Copyright (c)2010 Daniel Fiser <danfis at danfis dot cz>
    *
    *
    * This file is part of libccd.
    *
    * Distributed under the OSI-approved BSD License (the "License");
    * see accompanying file BDS-LICENSE for details or see
    * <http://www.opensource.org/licenses/bsd-license.php>.
    *
    * This software is distributed WITHOUT ANY WARRANTY; without even the
    * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    * See the License for more information.


    License of the GIMPACT routines

    Copyright (c) 2006 Francisco Leon Najera. C.C. 80087371.
    email: projectileman at yahoo dot com

    This library is free software; you can redistribute it and/or
    modify it under the terms of EITHER:
    (1) The GNU Lesser General Public License as published by the Free
    Software Foundation; either version 2.1 of the License, or (at
    your option) any later version. The text of the GNU Lesser
    General Public License is included with this library in the
    file GIMPACT-LICENSE-LGPL.TXT.
    (2) The BSD-style license that is included with this library in
    the file GIMPACT-LICENSE-BSD.TXT.
    (3) The zlib/libpng license that is included with this library in
    the file GIMPACT-LICENSE-ZLIB.TXT.

    This library is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the files
    GIMPACT-LICENSE-LGPL.TXT, GIMPACT-LICENSE-ZLIB.TXT and GIMPACT-LICENSE-BSD.TXT for more details.


    License of the convex decomposition routines

    Copyright (c) 2011 Khaled Mamou (kmamou at gmail dot com)
    All rights reserved.

    Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

    1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

    2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

    3. The names of the contributors may not be used to endorse or promote products derived from this software without specific prior written permission.

    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


    License of the Qhull routines

    Qhull, Copyright (c) 1993-2012

    C.B. Barber
    Arlington, MA

    and

    The National Science and Technology Research Center for
    Computation and Visualization of Geometric Structures
    (The Geometry Center)
    University of Minnesota

    email: qhull at qhull dot org

    This software includes Qhull from C.B. Barber and The Geometry Center.
    Qhull is copyrighted as noted above. Qhull is free software and may
    be obtained via http from www.qhull.org. It may be freely copied, modified,
    and redistributed under the following conditions:

    1. All copyright notices must remain intact in all files.

    2. A copy of this text file must be distributed along with any copies
    of Qhull that you redistribute; this includes copies that you have
    modified, or copies of programs or other software products that
    include Qhull.

    3. If you modify Qhull, you must include a notice giving the
    name of the person performing the modification, the date of
    modification, and the reason for such modification.

    4. When distributing modified versions of Qhull, or other software
    products that include Qhull, you must provide notice that the original
    source code may be obtained as noted above.

    5. There is no warranty or other guarantee of fitness for Qhull, it is
    provided solely "as is". Bug reports or fixes may be sent to
    qhull_bug at qhull dot org; the authors may or may not act on them as
    they desire.


    License of the tinyxml routines

    Original code by Lee Thomason (www.grinninglizard.com)

    This software is provided 'as-is', without any express or implied
    warranty. In no event will the authors be held liable for any
    damages arising from the use of this software.

    Permission is granted to anyone to use this software for any
    purpose, including commercial applications, and to alter it and
    redistribute it freely, subject to the following restrictions:

    1. The origin of this software must not be misrepresented; you must
    not claim that you wrote the original software. If you use this
    software in a product, an acknowledgment in the product documentation
    would be appreciated but is not required.

    2. Altered source versions must be plainly marked as such, and
    must not be misrepresented as being the original software.

    3. This notice may not be removed or altered from any source
    distribution.


    License of the FFmpeg library

    CoppeliaSim is linking dynamically to a library that itself links to the unmodified FFmpeg library files. The unmodified FFmpeg library, source and binaries (as distributed with CoppeliaSim), is available for download from here

    FFmpeg is licensed under the GNU Lesser General Public License (LGPL) version 2.1 or later. However, FFmpeg incorporates several optional parts and optimizations that are covered by the GNU General Public License (GPL) version 2 or later. If those parts get used the GPL applies to all of FFmpeg.


    License of the OpenMesh library

    OpenMesh makes use of the LGPL v3 with the following exception:

    As a special exception to the GNU Lesser General Public License, you may use any file of this software library without restriction. Specifically, if other files instantiate templates or use macros or inline functions from this file, or you compile this file and link it with other files to produce an executable, this file does not by itself cause the resulting executable to be covered by the GNU Lesser General Public License. This exception does not however invalidate any other reasons why the executable file might be covered by the GNU Lesser General Public License.


    License of the Assimp library

    Assimp makes use of a 3-clauses BSD license:

    Copyright (C) 2006-2015 assimp team, All rights reserved.

    Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  • Neither the name of the assimp team nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
  • THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


    License of the Qt GUI Toolkit library

    CoppeliaSim is linking dynamically to the unmodified Qt library.

    The Qt GUI Toolkit is Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
    Contact: Nokia Corporation (qt-info at nokia dot com)

    Qt is available under the LGPL version 2.1 (GNU Lesser General Public License version 2.1).


    License of the Qt Property Browser

    Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). Contact: http://www.qt-project.org/legal

    This file is part of the Qt Solutions component. You may use this file under the terms of the BSD license as follows:

    "Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

    * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

    * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

    * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."


    License of the Basic Compression Library

    Copyright © 2003-2006 Marcus Geelnard

    This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.

    Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

    1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.

    2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.

    3. This notice may not be removed or altered from any source distribution.


    License of the CHAI3D Library

    Software License Agreement (BSD License)
    Copyright (c) 2003-2014, CHAI3D.
    (www.chai3d.org)

    All rights reserved.

    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:

    * Redistributions of source code must retain the above copyright
    notice, this list of conditions and the following disclaimer.

    * Redistributions in binary form must reproduce the above
    copyright notice, this list of conditions and the following
    disclaimer in the documentation and/or other materials provided
    with the distribution.

    * Neither the name of CHAI3D nor the names of its contributors may
    be used to endorse or promote products derived from this software
    without specific prior written permission.

    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


    License of the mass properties calculation algorithm

    This code computes volume integrals needed for determining mass properties of polyhedral bodies.

    For more information, see the accompanying README file, and the paper

    Brian Mirtich, "Fast and Accurate Computation of Polyhedral Mass Properties," journal of graphics tools, volume 1, number 1, 1996.

    This source code is public domain, and may be used in any way, shape or form, free of charge.

    Copyright 1995 by Brian Mirtich

    mirtich at cs dot berkeley dot edu
    http://www.cs.berkeley.edu/~mirtich


    License of Newton Dynamics

    Newton is licensed under the liberal zlib open source license, with little if any practical difference between them.

    Copyright (c) <2003-2011>

    This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.

    Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

    1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.

    2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.

    3. This notice may not be removed or altered from any source distribution.

    Julio Jerez and Alain Suero


    License of the Dirent interface

    Dirent interface for Microsoft Visual Studio

    Version 1.21

    Copyright (C) 2006-2012 Toni Ronkko

    This file is part of dirent. Dirent may be freely distributed under the MIT license. For all details and documentation, see https://github.com/tronkko/dirent


    License of the CGAL library

    (the unmodified CGAL shared library is used by the simExtSurfRec plugin)

    Some parts of CGAL are available under the LGPL, other parts are under the GPL. For details see here and also refer to the LICENSE file from the CGAL source code distribution.


    License of Libigl

    Libigl is primarily licensed under MPL2. For details see here.


    License of ZeroMQ

    ZeroMQ Free Software Licenses

    The libzmq library is licensed under the GNU Lesser General Public License V3 plus a static linking exception.

    - You get the full source code. You can examine the code, modify it, and share your modified code under the terms of the LGPL.

    - Static linking exception. The copyright holders give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you must extend this exception to your version of the library.


    License of WebSocket++

    Copyright (c) 2014, Peter Thorson. All rights reserved.

    Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

    * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

    * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

    * Neither the name of the WebSocket++ Project nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PETER THORSON BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

    Detailed related to the bundled libraries can be found here


    License of three.js

    The MIT License

    Copyright © 2010-2022 three.js authors

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


    License of the dkjson module for Lua

    Copyright (C) 2010-2014 David Heiko Kolf

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


    License of the MessagePack module for Lua

    Copyright (c) 2012-2018 Francois Perrad

    This library is licensed under the terms of the MIT/X11 license, like Lua itself:

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


    License of the MessagePack code for C/C++

    Boost Software License - Version 1.0 - August 17th, 2003

    Permission is hereby granted, free of charge, to any person or organization obtaining a copy of the software and accompanying documentation covered by this license (the "Software") to use, reproduce, display, distribute, execute, and transmit the Software, and to prepare derivative works of the Software, and to permit third-parties to whom the Software is furnished to do so, all subject to the following:

    The copyright notices in the Software and this entire statement, including the above license grant, this restriction and the following disclaimer, must be included in all copies of the Software, in whole or in part, and all derivative works of the Software, unless such copies or derivative works are solely in the form of machine-executable object code generated by a source language processor.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


    License of the MessagePack code for Matlab

    Copyright (c) 2014 Bastian Bechtold

    All rights reserved.

    Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

    1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

    2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

    3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


    License of the MessagePack code for Java

    Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.


    License of Lua-CBOR

    Copyright (c) 2014-2015 Kim Alvefur

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


    License of org.conman.cbor

    The library is licensed under LGPL V3.0


    License of QCustomPlot

    Coppelia Robotics AG uses a commercial license of QCustomPlot

    QCustomPlot is licensed under the GNU General Public License (GPL). See also GPL.txt located in the project files of the custom UI plugin (simExtUI).


    License of LibICP

    Copyright 2011. All rights reserved.
    Institute of Measurement and Control Systems
    Karlsruhe Institute of Technology, Germany

    Authors: Andreas Geiger

    libicp is free software; you can redistribute it and/or modify it under the
    terms of the GNU General Public License as published by the Free Software
    Foundation; either version 3 of the License, or any later version.

    libicp is distributed in the hope that it will be useful, but WITHOUT ANY
    WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
    PARTICULAR PURPOSE. See the GNU General Public License for more details.

    You should have received a copy of the GNU General Public License along with
    libicp; if not, write to the Free Software Foundation, Inc., 51 Franklin
    Street, Fifth Floor, Boston, MA 02110-1301, USA


    License of base64 source code

    base64.cpp and base64.h
    base64 encoding and decoding with C++.
    Version: 1.01.00

    Copyright (C) 2004-2017 René Nyffenegger

    This source code is provided 'as-is', without any express or implied
    warranty. In no event will the author be held liable for any damages
    arising from the use of this software.

    Permission is granted to anyone to use this software for any purpose,
    including commercial applications, and to alter it and redistribute it
    freely, subject to the following restrictions:

    1. The origin of this source code must not be misrepresented; you must not
    claim that you wrote the original source code. If you use this source code
    in a product, an acknowledgment in the product documentation would be
    appreciated but is not required.
    2. Altered source versions must be plainly marked as such, and must not be
    misrepresented as being the original source code.
    3. This notice may not be removed or altered from any source distribution.

    René Nyffenegger rene.nyffenegger@adp-gmbh.ch


    License of OpenCV

    License Agreement
    For Open Source Computer Vision Library
    (3-clause BSD License)

    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions are met:

    1. Redistributions of source code must retain the above copyright notice,
    this list of conditions and the following disclaimer.

    2. Redistributions in binary form must reproduce the above copyright notice,
    this list of conditions and the following disclaimer in the documentation
    and/or other materials provided with the distribution.

    3. Neither the names of the copyright holders nor the names of the contributors
    may be used to endorse or promote products derived from this software without
    specific prior written permission.

    This software is provided by the copyright holders and contributors "as is" and
    any express or implied warranties, including, but not limited to, the implied
    warranties of merchantability and fitness for a particular purpose are disclaimed.
    In no event shall copyright holders or contributors be liable for any direct,
    indirect, incidental, special, exemplary, or consequential damages (including,
    but not limited to, procurement of substitute goods or services; loss of use, data,
    or profits; or business interruption) however caused and on any theory of liability,
    whether in contract, strict liability, or tort (including negligence or otherwise)
    arising in any way out of the use of this software, even if advised of the
    possibility of such damage.


    License of the Open Motion Planning Library

    BSD License

    Copyright (c) 2010–2018, Rice University. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

    Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of the Rice University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


    License of the Reflexxes Motion Library (RML) Type II

    The Reflexxes Motion Library Type II is licensed under LGPL V3.0


    License of the Ruckig Online Trajectory Generation library

    MIT License

    Copyright (c) 2021 Lars Berscheid

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


    License of the TOPP-RA library

    The TOPP-RA library is licensed under the MIT License:

    Copyright (c) 2017 Hung Pham

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.



    overviewTranslations

    English

    CoppeliaSim is the Swiss army knife among robotics simulators:

  • Cross platform (Windows, MacOSX, Linux)
  • 6 programming approaches (embedded scripts, plugins, add-ons, ROS nodes, or remote API clients)
  • 6 programming languages (C/C++, Python, Java, Lua, Matlab, and Octave)
  • more than 400 different API functions
  • 4 physics engines (ODE, Bullet, Vortex, Newton)
  • Integrated ray-tracer (POV-Ray)
  • Full kinematics solver (IK and FK for ANY mechanisms)
  • Mesh, OC tree and point cloud interference detection
  • Mesh, OC tree and point cloud minimum distance calculation
  • Path / motion planning (holonomic in 2-6 dimensions, non-holonomic for car-like vehicles, and motion planning for kinematic chains)
  • Vision sensors with built-in image processing (fully extendable)
  • Realistic proximity sensors (minimum distance calculation within a detection volume)
  • Built-in custom user interfaces
  • Fully integrated Reflexxes Motion Library, Ruckig Online Trajectory Generator and RRS-1 interface specifications
  • Data recording and visualisation (time graphs, X/Y graph or 3D curves)
  • Integrated shape edit modes
  • Dynamic particles for water-/air-jet simulation
  • Model browser with drag-and-drop functionality (also during simulation)
  • Multi-level undo/redo, movie recorder, simulation of paint dispensing, exhaustive documentation, etc.
  • robot, robotics, simulator, simulation, kinematics, dynamics, path planning, minimum distance calculation, collision detection, vision sensor, image processing, proximity sensor, paint dispensing.




    Deutsch

    CoppeliaSim ist das Schweizer Taschenmesser unter den Roboter-Simulatoren: Sie werden keinen Simulator mit mehr Funktionalität oder umfangreicheren APIs finden:

  • Plattformübergreifend (Windows, MacOS, Linux)
  • 6 Programmieransätze (eingebettete Skripte, Plugins, Add-ons, ROS Knoten, oder Remote API Clients)
  • 6 Programmiersprachen (C/C++, Python, Java, Lua, Matlab, und Octave)
  • Mehr als 400 verschiedene API-Funktionen
  • 4 Physik engines (ODE, Bullet, Vortex, Newton)
  • Integrated ray-tracer (POV-Ray)
  • Kinematik-Lösungsmodul
  • Kollisionserkennung zwischen meshes, OC trees und point clouds
  • Mesh, OC tree und point cloud basierte Bestimmung der kleinsten Entfernung
  • Bahnplanung (holonomisch in 2-6 Dimensionen, nicht-holonomisch, und für kinematische Ketten)
  • Optische Sensoren mit integrierter Bildverarbeitung (erweiterbar)
  • Realistische Entfernungssensoren
  • Angepasste Benutzeroberflächen
  • Voll integrierte Reflexxes Motion Library, Ruckig Online Trajectory Generator und RRS-1 interface specifications
  • Datenerfassung und Visualisierung (Zeit-Diagramme, X/Y-Grafik oder 3D-Kurven)
  • Integrierter Mesh-Editiermodus
  • Dynamische Partikel für Wasser- oder Luftströmungssimulation
  • Modell-Browser mit Drag-and-Drop-Funktionalität (auch während der Simulation)
  • Mehrstufige Undo/Redo-Funktion, Filmaufnahmefunktion, Farbspritzsimulation, ausführliche Dokumentation, usw.
  • roboter, robotik, simulator, simulation, kinematik, dynamik, bahnplanung, kleinste entfernung bestimmung, kollisionserkennung, optischer sensor, bildverarbeitung, entfernungssensoren, farbspritz.




    Français

    CoppeliaSim est le couteau suisse parmi les simulateurs de robots: vous ne trouverez pas un simulateur avec plus de fonctions ou une API plus élaborée:

  • Disponible sur Windows, MacOSX et Linux
  • 6 modes de programmation (scripts intégrés, plugins, add-ons, nœuds ROS, ou clients "Remote API")
  • 6 langages de programmation (C/C++, Python, Java, Lua, Matlab, et Octave)
  • Plus de 400 différentes fonctions API
  • 4 moteurs physiques (ODE, Bullet, Vortex, Newton)
  • Integrated ray-tracer (POV-Ray)
  • Solveur de cinématique directe et inverse
  • Détection de collisions entre meshes, OC trees et point clouds
  • Module de calcul de distances minimales entre meshes, OC trees et point clouds
  • Module de planification de mouvement (holonome en 2-6 dimensions, non-holonome pour des véhicules types voiture, et planification de mouvement pour chaines cinématiques)
  • Capteur de vision avec traitement d'image intégré (entièrement extensible)
  • Capteur de proximité
  • Interfaces utilisateur personnalisées
  • Librairies "Reflexxes Motion Library", "Ruckig Online Trajectory Generator" et "RRS-1 interface specifications" intégrées
  • Enregistrement et visualisation de données de simulation (graphes temporels, X/Y, ou courbes 3D)
  • Editeur de mesh intégré
  • Particules dynamiques pour la simulation de jets d'eau ou d'air
  • Model-browser avec fonctionnalité drag-and-drop (également pendant la simulation)
  • Fonctionalité undo/redo, enregistreur vidéo, simulation de pulvérisation de peinture, documentation exhaustive, etc.
  • robot, robotique, simulateur, simulation, cinématique, dynamique, planification de mouvement, calcul de distance minimale, détection de collision, capteur de vision, traitement d'image, capteur de proximité, pulvérisation de peinture.




    Italiano

    CoppeliaSim è il coltellino svizzero tra i simulatori di robot: non troverete un simulatore con più funzioni, più caratteristiche, o API così elaborate:

  • Multipiattaforma (Windows, MacOS, Linux)
  • 6 differenti approcci di programmazione (script incorporati, plugin, add-on, nodi ROS, o client API remote)
  • 6 linguaggi di programmazione (C/C++, Python, Java, Lua, Matlab e Octave)
  • Più di 400 diverse funzioni API
  • 4 Motori di fisica (ODE, Bullet, Vortex, Newton)
  • Integrated ray-tracer (POV-Ray)
  • Risolutore completo di cinematica (cinematica inversa e diretta per qualsiasi meccanismo)
  • Rilevamento delle interferenze (meshes, OC trees e point clouds)
  • Calcolo della distanza minima tra mesh, OC tree et point cloud
  • Pianificazione del percorso (olonomico in 2-6 dimensioni, non olonomico per veicoli simili ad auto)
  • Sensori di visione con elaborazione delle immagini incorporata (completamente estensibile)
  • Sensori di prossimità realistici (calcolo della distanza minima all'interno di un volume di rilevamento)
  • Interfacce utente personalizzate incorporate
  • Librerie di Movimento Reflexxes, Ruckig Online Trajectory Generator e RRS-1 interface specifications completamente integrate
  • Visualizzazione e salvataggio di dati (grafici in funzione del tempo, grafici X/Y o curve 3D)
  • Editor di forme integrato
  • Particelle dinamiche per la simulazione di acqua o getti d'aria
  • Browser di modelli con funzionalità di drag-and-drop (utilizzabile anche durante le simulazioni)
  • undo/redo a più livelli, registratore di video, simulatore di vernice, documentazione esaustiva, ecc
  • robot, robotica, simulatore, simulazione, cinematica, dinamica, pianificazione del moto, calcolo della distanza minima, controllo di collisione, sensore di visione, elaborazione delle immagini, sensori di prossimità, simulazione di erogazione della vernice.




    Español

    CoppeliaSim es la navaja suiza entre los simuladores de robots: usted no encontrará un simulador con más funciones, recursos o APIs más elaborados:

  • Multiplataforma (Windows, MacOS, Linux)
  • 6 enfoques de programación (scripts incrustados, plugins, add-ons, nodos ROS, o APIs de clientes remotos)
  • 6 lenguajes de programación (C/C++, Python, Java, Lua, Matlab o Octave)
  • Más de 400 funciones diferentes de API
  • 4 motores físicos (ODE, Bullet, Vortex, Newton)
  • Integrated ray-tracer (POV-Ray)
  • Cálculo completo de la cinemática
  • Detección de interferencia u obstáculo (meshes, OC trees, point clouds)
  • Cálculo de la distancia mínima entre Meshes, OC trees, point clouds
  • Planeación de trayectoria (holonómica en 2-6 dimensiones, no holonómica para vehículos tipo automóvil)
  • Sensores de visión con procesamiento de imagen integrado (totalmente extensible)
  • Sensores de proximidad real
  • Interfaces de usuario integradas y personalizadas
  • Reflexxes Motion Library, Ruckig Online Trajectory Generator y RRS-1 interface specifications totalmente integrado
  • Registro de datos y visualización (gráficos de tiempo, gráfico X / Y o curvas 3D)
  • Modos de edición de forma integrados
  • Partículas dinámicss para la simulación de jet de agua o aire
  • Navegador de modelos con función de arrastrar y soltar (drag and drop) (incluso durante la simulación)
  • Función multiniveles deshacer /rehacer (undo/redo), función de grabación o registro de video, simulación de pintura, documentación exhaustiva, etc.
  • robot, robótica, simulador, simulación, cinemática, dinámica, planificación o planeación de la trayectoria, cálculo de la distancia, detección de colisiones, sensores de visión, procesamiento de imágenes, sensores de proximidad, simulación de pintura.




    Türkçe

    CoppeliaSim, robot simülatörleri arasında tam bir "İsviçre çakısı"dır; daha fazla fonksiyon içeren, daha özellikli ve bu kadar çok özel API içeren bir simülatör daha bulamazsınız:

  • Çapraz platform (Windows, MacOS, Linux)
  • 6 programlama yaklaşımı (gömülü script'ler, plugin'ler, add-on'lar, ROS node'lar, uzak API)
  • 6 programlama dili (C/C++, Python, Java, Lua, Matlab ve Octave)
  • 400'den fazla farklı API fonksiyonu
  • 4 fizik motoru (ODE, Bullet, Vortex, Newton)
  • Integrated ray-tracer (POV-Ray)
  • Tam kinematik çözücü (Herhangi bir mekanizma için Ters Kinematik ve İleri Kinematik)
  • Sayısal ağlar arası girişim tespiti (meshes, OC trees and point clouds)
  • Sayısal ağlar arası en kısa mesafe tespiti (meshes, OC trees and point clouds)
  • Güzergah planlama (2-6 boyutta holonomik, taşıt benzeri yapılar için holonomik olmayan)
  • Entegre görüntü işleme özelliğine sahip (tamamen genişletilebilir) görüntü sensörleri
  • Gerçekçi mesafe sensörleri (algılama hacmi içerisinde en kısa mesafe hesaplaması)
  • Entegre özelleştirilmiş kullanıcı arayüzleri
  • Tamamen entegre Reflexxes Hareket Kütüphanesi+ Ruckig Online Trajectory Generator + RRS-1 interface specifications
  • Veri kaydetme ve görselleştirme (zaman grafiği, X/Y grafiği veya 3B eğriler)
  • Entegre şekil düzenleme modları
  • Su ve hava jeti simülasyonları için dinamik partiküller
  • Sürükle-bırak fonksiyonuna sahip Model Listeleyici (simülasyon esnasinda da aktif)
  • Çoklu geri al/yinele, video kaydedici, boyama simülasyonu, detaylı dokümantasyon, vb.
  • CoppeliaSim Türkiye distribütörü: Tura Mühendislik

    robot, robotik, simülatör, simülasyon, kinematik, dinamik, güzergah planlama, en kısa mesafe hesaplaması, çakışma tespiti, görüntü sensörü, görüntü işleme, mesafe sensörü, sprey boya simülasyonu.




    Português

    CoppeliaSim é o canivete suíço entre os simuladores de robôs: você não vai encontrar um simulador com mais funções, recursos ou APIs mais elaborados:

  • Plataforma Híbrida (Windows, MacOS, Linux)
  • 6 abordagens de programação (scripts embutidos, plugins, add-ons, nós ROS, ou APIs de clientes remotos)
  • 6 linguagens de programação (C/C++, Python, Java, Lua, Matlab e Octave)
  • Mais de 400 diferentes funções de API
  • 4 motores de física (ODE, Bullet, Vortex, Newton)
  • Integrated ray-tracer (POV-Ray)
  • Cálculo completo de cinemática
  • Deteção de interferência (meshes, OC trees, point clouds)
  • Cálculo de distância mínima (meshes, OC trees, point clouds)
  • Planejamento de trajetória (holonômica em 2-6 dimensões, não holonômica para veículos como carros)
  • Sensores de visão com processamento de imagem embutido (totalmente extensível)
  • Sensores de proximidade realísticos
  • Interfaces de usuário personalizadas
  • Reflexxes Motion Library, Ruckig Online Trajectory Generator e RRS-1 interface specifications totalmente integrada
  • Gravação de dados e visualização (gráficos de tempo, gráficos X / Y ou curvas 3D)
  • Modos de edição de formas integrados
  • Partículas dinâmicas para simulação de jatos de água ou ar
  • Navegador de modelos com funcionalidade drag-and-drop (também durante a simulação)
  • Função undo / redo em níveis múltiplos, gravador de animações, simulação de pintura, documentação extensiva, etc.
  • robô, robótica, simulador, simulação, cinemática, dinâmica, planejamento de trajetória, cálculo de distância mínima, deteção de colisão, sensor de visão, processamento de image.




    日本語

    CoppeliaSimは他に類を見ない多くの機能と特長、精巧なAPIを備えたアーミーナイフのようなロボットシミュレータです。

  • 複数のOSに対応するクロスプラットフォーム
  • 6つのプログラム手法 (組込みスクリプト、プラグイン、アドオン、ROSノード、リモートAPIクライアント)
  • 7つのプログラム言語 (C/C++、Python、Java、Matlab、Octave)
  • 400以上のAPI関数
  • 4つの物理演算エンジン (ODE, Bullet, Vortex, Newton)
  • Integrated ray-tracer (POV-Ray)
  • 双方のキネマティクスソルバ(様々なメカニズムのIKとFK)
  • メッシュ, OC tree, point cloud-干渉検出
  • メッシュ, OC tree, point cloud-最短距離計算
  • パスプランニング (2~6次元ホロノミック、自動車のような非ホロノミック)
  • 画像処理機能を搭載したビジョンセンサー(フルカスタマイズ可能)
  • 現実に即した近接センサー(検知範囲内での最短距離計算)
  • エディターを含むカスタム可能なユーザーインターフェースを搭載
  • Reflexxes Motion Library + Ruckig Online Trajectory Generator + RRS-1 interface specifications をフルサポート
  • データ保存・可視化(時間グラフ、XYグラフ、3Dカーブ)
  • shapeエディットモード搭載
  • ウォーター/エアージェットの動的粒子シミュレーション
  • ドラッグ&ドロップ可能なモデルブラウザー(シミュレーション中も有効)
  • その他、マルチレベルアンドゥ・リドゥ、動画作成、塗装シミュレーション、詳細なドキュメント
  • ロボット、ロボット工学、シミュレーター、シミュレーション、キネマティクス(運動学)、パスプランニング、最短距離計算、衝突検知、ビジョン(視覚/画像)センサー、画像処理、近接センサー、塗装シミュレーション




    한국어

    CoppeliaSim 은 로봇 시뮬레이터 중에서 마치 스위스 군용 나이프와 같습니다. : 다음과 같은 수 많은 기능과 특징, 그리고 정교한 API를 갖추고 있습니다:

  • 크로스 플랫폼 지원 (윈도우즈, 맥OS, 리눅스)
  • 6 개의 프로그래밍 방식 가능 (내장 스크립트, 플러그인, 부가 기능, ROS 노드, 원격 API 클라이언트 )
  • 6 종류의 컴퓨터 프로그래밍 언어 지원 (C/C++, Python, Java, Lua, Matlab, Octave)
  • 시뮬레이션을 위한 400개 이상의 API 함수 지원
  • 4개의 물리 엔진 (ODE, Bullet, Vortex, Newton)
  • Integrated ray-tracer (POV-Ray)
  • 범용 기구학 솔버
  • 메쉬 대 메쉬 간섭 감지 (meshes, OC trees and point clouds)
  • 메쉬 대 메쉬 거리 계산 (meshes, OC trees and point clouds)
  • 경로 생성 기능 (2-6차 홀로노믹 방식과 자동차와 기계들을 위한 비홀로노믹 방식 지원)
  • 이미지 프로세싱을 내장한 비전 센서 (확장 가능)
  • 실제에 가까운 근접 센서
  • 사용자 정의 유저 인터페이스와 편집기 지원
  • Reflexxes 모션 라이브러리 타입 + Ruckig Online Trajectory Generator + RRS-1 interface specifications
  • 시뮬레이션 데이터 저장 기능과 다양한 시각적 분석 (시간선도 그래프, XY 그래프, 3차원 커브)
  • 형상 편집 모드 내장
  • 물/젯-에어를 시뮬레이션할 수 있는 역학입자
  • 드래그 앤 드롭 기능을 지원하는 모델 브라우저 (시뮬레이션 도중에서도 사용 가능)
  • 다중 레벨 되돌리기/다시하기, 동영상 저장, 페인트 분사 시뮬레이션, 상세한 매뉴얼과 기타 등등
  • 로봇, 로보틱스, 시뮬레이터, 시뮬레이션, 기구학, 역학, 경로 생성, 최소 거리 계산, 충돌 감지, 비전 센서, 영상처리, 근접센서, 페인트 분사.




    简体中文

    CoppeliaSim 是机器人仿真器里的“瑞士军刀”:你不会发现一个比它拥有更多功能,特色或是更详尽应用编程接口的机器人仿真器:

  • 跨平台 (Windows、MacOS、Linux)
  • 六种编程方法 (嵌入式脚本、插件、附加组件、ROS节点、远程客户端应用编程接口)
  • 6种编程语言 (C/C++、Python、Java、Lua、Matlab、和Octave)
  • 超过400种不同的应用编程接口函数
  • 4个物理引擎 (ODE, Bullet, Vortex, Newton)
  • Integrated ray-tracer (POV-Ray)
  • 完整的运动学解算器 (对于任何机构的逆运动学和正运动学)
  • Mesh, OC tree, point cloud-网孔干扰检测
  • Mesh, OC tree, point cloud-网孔最短距离计算
  • 路径规划 (在2到6维中的完整约束、对于车式车辆的非完整约束)
  • 嵌入图像处理的视觉传感器 (完全可拓展)
  • 现实的接近传感器 (在检测区域中的最短距离计算)
  • 嵌入式的定制用户接口、包括编辑器
  • 完全集成的第四类Reflexxes运动库 + Ruckig Online Trajectory Generator + RRS-1 interface specifications
  • 数据记录与可视化 (时距图、X/Y图或三维曲线)
  • 整合图形编辑模式
  • 支持水/气体喷射的动态颗粒仿真
  • 带有拖放功能的模型浏览器 (在仿真中依旧可行)
  • 多层 取消/重做、影像记录、油漆的仿真、详尽的文档等
  • 机器人、机器人学、仿真器、仿真、运动学、动力学、路径规划、最短距离计算、碰撞检测、视觉传感器、图像处理、接近传感器、油漆分散仿真.




    繁体中文

    CoppeliaSim 是機器人模擬軟體中的瑞士刀,您再也找不到支援更多功能,更多特色或有更詳盡的應用程式介面的機器人模擬軟體:

  • 跨平台支援(Windows, MacOSX, Linux)
  • 支援六種撰寫程式的方式 (嵌入式腳本、插件、附加組件、ROS節點、遠端客戶端應用程式介面)
  • 支援6種程式語言 (C/C++、Python、Java、Lua、Matlab、和Octave)
  • 400種以上的應用程式介面函數
  • 支援4種物理引擎 (ODE, Bullet, Vortex, Newton)
  • 整合ray-tracer (POV-Ray)
  • 具備完整的運動學計算器 (支援任何機構的正運動學與逆運動學計算)
  • 網格-網格干涉偵測 (meshes, OC trees and point clouds)
  • 網格-網格最短距離計算 (meshes, OC trees and point clouds)
  • 支援路線及運動完整規劃 (支援二~六維的完整約束,車輛類型載具的非完整約束,以及對於連鎖運動的規劃)
  • 內建影像處理的視覺感測器 (完全可擴充)
  • 真實的接近感測器 (偵測範圍內的最短距離計算)
  • 內建含編輯器的客製化使用者介面
  • 完全整合第四類Reflexxes Motion Library, Ruckig Online Trajectory Generator以及RRS-1 介面規格
  • 支援資料的儲存與視覺化 (time graphs, X/Y graph or 3D curves)
  • 整合形狀編輯模式
  • 支援噴水與氣體噴射的動態顆粒模擬
  • 支援拖放功能的模型瀏覽器 (模擬計算中仍可使用)
  • 支援多重的取消/重做、影像錄製、油漆噴塗、建立詳盡的文檔等功能
  • 機器人,機器人學,模擬器,模擬計算,運動學,動力學,路徑規劃,最短距離計算,碰撞偵測,視覺感測器,影像處理,接近感測器,油漆噴塗模擬.





    Next >> userInterface

    Copyright © All rights reserved | This template is made with by Colorlib