CoppeliaSim Changelog

What's new in CoppeliaSim 4.6.0 rev. 16

Jan 25, 2024
  • Fixed several bugs. Thanks to Samuel Cavalcanti, Elia Cereda, Keith Siilats, Pardeep Singh Panesar, Zichun Xu, Belal Elsayed and github user mfrigerio17 for noticing them or helping to resolve them
  • Support for Python has been greatly improved. Embedded scripts now use a new Python wrapper by default: pythonWrapperV2.lua, and the ZeroMQ remote API has been updated. This makes Python code more reactive, faster and easier to program. Differences with Lua scripts have been further reduced to a minimum. Reentrancy is not a problem anymore. Many demo scenes now have a python version.
  • The CoppeliaSim library itself can now also easily be loaded and called synchronously from a Python script, thus allowing increased speed, flexibility and fine-grained control of the simulation loop.
  • Switched to a new plugin architecture, allowing API versioning. New plugins now need to be loaded explicitly, via the require directive (e.g. as in simIK = require('simIK')), or via the loadPlugin API function. New plugins can be loaded and unloaded (unloadPlugin) as often as required. Older scripts are supported via an implicit require mechanism.
  • sim.setThreadAutomaticSwitch is deprecated in favor of sim.setStepping
  • sim.switchThread is deprecated in favor of sim.step
  • CoppeliaSim's read-eval-print-loop functionality (via the commander plugin) now allows switching between a Python or a Lua interpreter.
  • CoppeliaSim's read-eval-print-loop functionality (via the commander plugin) now works also in headless mode, with line editing, history and TAB-completion, via the replxx library.
  • Command-line option -H now loads the headless version of the CoppeliaSim library.
  • Added callback function sysCall_thread for Lua too, which is an alternate, convenience function, to creating and handling the main coroutine via code.
  • Added callback function sysCall_selChange that is triggered when selection changes
  • execUnsafe is true, execUnsafeExt is false and executeUnsafe is ignored, by default in usrset.txt
  • Improved the Referenced Handles Explorer add-on
  • Improved the Joint Tool add-on
  • Added markdown format support in the 'text-browser' widget of the UI plugin.
  • Switched to Qt5.15.2 on Ubuntu

New in CoppeliaSim 3.6.2 rev0 (Jun 26, 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-on scripts.
  • The BØ-based remote API now also allows to discontinue publishers and subscribers, without the need of restarting the client: simxRemovePublisher and simxRemoveSubscriber.
  • Named command-line arguments are now supported via the -G option. Those can be queried (e.g. by plugins) via simGetStringNamedParam.

New in CoppeliaSim 3.6.1 rev0 (Mar 15, 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 function simApplyTexture.
  • The shape import/export functionality is now handled by a V-REP Plugin (v_repExtAssimp), based on the Assimp library. See here for the new API functions.

New in CoppeliaSim 3.6.0 rev0 (Feb 15, 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 and Ulrich Viereck 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. The user can revert to previous behaviour by replacing sim.handleChildScripts, sim.launchThreadedChildScripts and sim.resumeThreads in the main script with sim.handleChildScripts_legacy, sim.launchThreadedChildScripts_legacy and sim.resumeThreads_legacy. A better alternative would be to adjust the Tree traversal parameter for scripts that require it.
  • Dynamics callback functions have been implemented and are supported in non-threaded child scripts and customization scripts.
  • Added a system callback function for customization scripts and add-on scripts 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 functions: sim.setDebugWatchList, sim.getUserVariables and sim.getPersistentDataTags.
  • The Open Mesh plugin for V-REP now uses the latest OpenMesh library (V6.3) on all 3 platforms
  • A new version of the remote API is available: the BØ-based remote API. It is easier, more intuitive to use and much easier to extend than the legacy remote API. For a quick test, use the demo scene B0-basedRemoteApiDemo.ttt and one of the simpleTest B0-remote API clients located in programming/b0RemoteApiBindings/
  • 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 an add-on script that acts as the server-side of the BØ-based remote API: vrepAddOnScript-b0RemoteApiServer.lua
  • Added a model that acts as the server-side of the BØ-based remote API: models/tools/b0RemoteApiServer.ttm
  • 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: v_repExtCodeEditor. 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.

New in CoppeliaSim 3.5.0 rev1 (Feb 7, 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 590 LTS on all platforms
  • Added an interface plugin to the BlueZero middleware BlueZero (or BØ) is a cross-platform middleware which provides tools for interconnecting pieces of software running in multiple threads, multiple processes and even multiple machines
  • 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 a 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 API notation for Lua scripts: V-REP function names have moved to the sim namespace (eg simGetObjectHandle is now simgetObjectHandle), plugin function names have moved to specific namespaces (eg simExtOMPL_createStateSpace is now simOMPLcreateStateSpace) The old API functions remain functional for backward compatibility Known API functions in embedded scripts are automatically adjusted for that notation change This makes scenes and models saved with this V-REP version not compatible with older V-REP versions, so make sure to backup your scenes and models This automatic API function adjustment can be disabled, with changeScriptCodeForNewApiNotation in file system/usrsettxt
  • Switched to a cleaner way of calling script code, by using predefined functions (eg sysCall_init, sysCall_actuation, etc Check out this example) 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 non-threaded 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/usrsettxt)
  • A new contact callback function has been implemented and is supported in non-threaded 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/usrsettxt)
  • 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++
  • Each scene object now also has a unique alternative name, which can be used for custom application, and which doesn't interfere with V-REP's object handle retrieval for associated code: simgetObjectName, simsetObjectName and simgetObjectHandle can now be used with simhandleflag_altname
  • Added simgetShapeViz, 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 toolttm
  • Added a vision sensor model that extracts 3D positions from blob detections: Models/components/sensors/Blob to 3D positionttm
  • 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 OMPL API functions: most functions do not return any value anymore (but might trigger exceptions), others return slightly different values, namely: simOMPLcompute, simOMPLsolve, simOMPLgetData, simOMPLgetPath and simOMPLreadState
  • Broke compatibility of the simExtSurfaceReconstruction_reconstruct API function, which was replaced with simSurfRecreconstruct_scale_space
  • Added support for shared memory communication in the remote 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: simexecuteScriptString, simgetApiFunc, simgetApiInfo, simsetModuleInfo and simgetModuleInfo
  • 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

New in CoppeliaSim 3.4.0 (Apr 8, 2017)

  • Coppelia Robotics has merged with Blue Workforce (December 28th 2016)
  • V-REP PLAYER, V-REP PRO and V-REP PRO EDU will continue to be available,
  • and will continue to be developed.

New in CoppeliaSim 3.3.2 (Aug 30, 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 simInsertPointsIntoPointCloud or simInsertObjectIntoPointCloud.
  • 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 and to the Lua path variable of all scripts.
  • Improved the Qt-based 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: simOpenTextEditor, simPackTable and simUnpackTable.
  • Added a first version of a SDF format importer plugin, courtesy of Federico Ferri. The plugin source code is located in programming/v_repExtSDF.
  • An SDL2 library plugin, courtesy of Tobias Benz, is available in programming/v_repExtSDL2 or here.

New in CoppeliaSim 3.3.1 (May 24, 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 (RosInterface), 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 RosInterface. A new scene was created that also illustrates the new RosInterface: rosInterfaceTopicPublisherAndSubscriber.ttt.
  • Added a new object type: octrees. They represent a spatial partitioning based of voxels and can be used for various purposes (e.g. simplified shape representation, occupancy grid/space, etc.). Octrees are collidable, measurable, detectable and renderable. New API function related to octrees are listed here.
  • Added a new object type: point clouds. They represent points stored inside of an octree-like data structure and can be used for various purposes (e.g. point storage and manipulation, etc.). Point clouds are collidable, measurable, detectable and renderable. 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, octrees and point clouds.
  • Added a new scene (minimumDistanceCalculationDemo.ttt), which illustrates V-REP's minimum distance calculation capabilities on dummies, shapes, octrees and point clouds.
  • Added a new scene (proximitySensorDemo2.ttt), which illustrates V-REP's proximity sensor capabilities on dummies, shapes, octrees 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: simExtOMPL_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, simRegisterScriptCallbackFunction and simSetScriptVariable.
  • 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: simLoadImage, simGetScaledImage and simTransformImage.
  • Added a model, allowing to start, pause, stop or step a synchronous simulation, from a ROS node. The model is based on the new RosInterface and is located in Models/tools/rosInterfaceHelperTool.ttm
  • An IMU ROS plugin, courtesy of Bartolomeo Della Corte, is available here.

New in CoppeliaSim 3.3.0 (Feb 19, 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 in programming/v_repExtOMPL/. Following demo scenes are now using the OMPL plugin functionality: motionPlanningDemo1.ttt, motionPlanningAndGraspingDemo.ttt, 3DoFHolonomicPathPlanning.ttt and 6DoFHolonomicPathPlanning.ttt, motionPlanningServerDemo.ttt.
  • Added a new remote API function that allows to call script functions: simxCallScriptFunction: this function is very useful when a regular API function is not available in the remote API, or when a succession of complex commands need to be executed locally. The demo scene remoteApiCommandServerExample.ttt was updated, as well as the related complexCommandTest.* files in programming/remoteApiBindings.
  • 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 ROS interface, 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 simCallScriptFunction API function.
  • Added a new API function that allows computing manipulator joint values from a random end-effector pose: simGetConfigForTipPose. This function replaces the deprecated simGetMpConfigFromTipPose. The demo scene ik_fk_simple_examples/8-computingJointAnglesForRandomPoses.ttt illustrates this new function. This function was also added to the external IK together with the demo scene externalIkDemo3.ttt.
  • Added a new API function that allows generating a straight-line path between a robot configuration and a target end-effector pose: simGenerateIkPath. This function replaces the deprecated simFindIkPath.
  • Added two API functions that allow to directly modify script variables from a plugin, or from the main client application: simAppendScriptArrayEntry and simClearScriptVariable.
  • simLoadModule and simUnloadModule 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: simComputeJacobian.
  • 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: simComputeMassAndInertia and simGetExtensionString.
  • 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.

New in CoppeliaSim 3.2.3 (Nov 26, 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: simGetQHull, simGetDecimatedMesh, simExportIk.
  • Added two simple add-on functions 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.
  • Modified the external IK source code, in order to support handling several instances of the same robot/kinematics, via the simEmbSwitch function. The source code can now also be compiled in double-precision.
  • Added two new demo scenes that illustrate the external IK functionality: scenes/externalIkDemo1.ttt and scenes/externalIkDemo2.ttt. Refer also to the related source code in programming/externalIkDemo1 and programming/externalIkDemo2.
  • Added several simple example scenes that illustrate how to use the inverse kinematics calculation module. The scenes can be found in scenes/ik_fk_simple_examples.
  • 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 in programming/windowsOnlyProjects/v_repExtCam.
  • 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: simCallScriptFunction.

New in CoppeliaSim 3.2.2 (Sep 19, 2015)

  • Fixed several bugs.
  • 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 grouped shapes. This allows to edit the visual parameters of a grouped 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 in programming/v_repExtPovRay.
  • 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 in programming/v_repExtExternalRenderer.
  • Added a simulation model of the innovative new Ragnar robot, courtesy of Blue Workforce: Models/robots/non-mobile/_Ragnar_EDU.ttm.
  • 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.
  • Added a demo scene that illustrates how to handle complex commands coming from a remote API client: scenes/remoteApiCommandServerExample.ttt. Have also a look at the correcponding remote API client code (e.g. in programming/remoteApiBindings/matlab/matlab/complexCommandTest.m)
  • Modified the 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. Installation instructions are given here.
  • Moved the Qhull functionality out of V-REP's main library, into a plugin (v_repExtQhull). The source code can be found in programming/v_repExtQhull.
  • Moved the convex decomposition functionality out of V-REP's main library, into a plugin (v_repExtConvexDecompose). The source code can be found in programming/v_repExtConvexDecompose.
  • The convex decomposition plugin now also offers the V-HACD algorithm (next to the HACD algorithm).
  • 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.
  • 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.
  • Added an option to use the LuaJIT (Lua Just-in-Time compiler) via the optional v_repLua library. The source code of v_repLua can be found in programming/v_repLuaLibrary. To enable loading and using the v_repLua library, set variable useExternalLuaLibrary to true in file system/usrset.txt.

New in CoppeliaSim 3.2.1 (May 4, 2015)

  • New features include:
  • RRS-1 specification support
  • Improved haptic device plugin
  • OpenMesh plugin (with mesh decimation algorithm)
  • Simplified plugin creation
  • Many new API functions and models, etc.

New in CoppeliaSim 3.2.0 (Feb 10, 2015)

  • New features include:
  • Improved visual appearance
  • Better support for Retina displays
  • Velodyne HDL-64E S2 Lidar model
  • Plugin for haptic device support
  • Many new API functions and models, etc.

New in CoppeliaSim 3.1.3 (Oct 1, 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 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:
  • non-threaded child scripts execution is now automatically cascaded (i.e. no need to explicitely call simHandleChildScript anymore).
  • non-threaded 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.
  • threaded child scripts are now launched/relaunched via the simLaunchThreadedChildScripts function.
  • a non-threaded child script cannot launch a threaded child script anymore. And vice-versa.
  • 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: simCopyPasteObjects, simScaleObjects and simRemoveModel. 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). They are located in programming/ros_packages/vrep_plugin_skeleton and programming/ros_packages/vrep_skeleton_msg_and_srv.
  • 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 simReadCustomDataBlock and simWriteCustomDataBlock 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: simGetObjectsInTree, simGetObjectSizeValues, simSetObjectSizeValues, simScaleObject (i.e. non-isometric scaling), simGetShapeTextureId, simSetShapeTexture, simGetVisionSensorCharImage, simSetVisionSensorCharImage, simGetCollectionObjects, simGetScriptAttribute, simSetScriptAttribute, simHandleChildScripts, simLaunchThreadedChildScripts and simReorientShapeBoundingBox.
  • 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.

New in CoppeliaSim 3.1.2 (Oct 1, 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 ROS plugin was catkinized, courtesy of Arne Hitzmann and Sergi Foix.
  • The remote API (client and server) was modified and transports large data (e.g. images) much faster now. Make sure to use up-to-date and matching client-server pairs.
  • 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 two new remote API functions to easily handle data exchanges between client and server: simxReadStringStream and simxWriteStringStream.
  • 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: simGetShapeGeomInfo.
  • 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.
  • Added a new API function that allows to compute IK groups without directly applying the calculated values: simCheckIkGroup.
  • simRMLPosition and simRMLVelocity are declared deprecated and are replaced by following API functions: simRMLPos, simRMLVel, simRMLStep and simRMLRemove. This is to correct for a bug linked to simRMLPosition and simRMLVelocity.
  • Added the possibility to attach user data to each path control point. For each control point, there are 16 auxiliary flags, and 4 auxiliary data channels. User data can be retrieved in an interpolated fashion along a path via a new API function: simGetDataOnPath.
  • 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.

New in CoppeliaSim 3.1.1 (Oct 1, 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 simSetShapeMaterial.
  • Added new API functions to create and modify textures: simGetTextureId, simReadTexture, simWriteTexture, simCreateTexture.
  • 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: simWriteCustomDataBlock and simReadCustomDataBlock.
  • Added a new simulation scene that illustrates motion planning and grasping: scenes/motionPlanningAndGraspingDemo.ttt.
  • Added new API functions for efficient point cloud display: simAddPointCloud and simModifyPointCloud.
  • Added a new plugin (v_repExtVision) 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 in programming/v_repExtVision.
  • 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.

New in CoppeliaSim 3.1.0 (Oct 1, 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.
  • Separated the GUI thread from the simulation thread for better application stability, speed, and safer threaded rendering operation.
  • Fixed several bugs. Thanks to Matthias Schindler, Renaud Detry and Ulrich Schwesinger for noticing them.
  • Added two regular API functions allowing to create ghost objects: simAddGhost and simModifyGhost. Ghost objects can be used to visually compare several simulation runs with each other.
  • 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 ROS interface, 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: simQuitSimulator, simGetThreadId, simLockResources and simUnlockResources.
  • 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.
  • Redefined most simxChar types to simxUChar types in the remote API, in order to avoid confusions (a char can be signed or unsigned, depending on the implementation). When recompiling older projects, you might have to cast between types.
  • Added a bridge to OpenCV via a plugin, courtesy of Marco Bellaccini. The files are located here.
  • Added a first version of a C# wrapper for the remote API, courtesy of Hendrik Wiese. The files are located here.
  • Added a first version of a Labview interface for the remote API, courtesy of Peter Mačička. The files are located here.
  • Added a remote API binding for the Octave framework (i.e. the open-source equivalent of Matlab). All required files are located in programming/remoteApiBindings/octave. Refer also to the Octave remote API functions.
  • In order to speed-up rendering, some event callbacks have been disabled by default (sim_message_eventcallback_renderingpass, sim_message_eventcallback_opengl, sim_message_eventcallback_openglframe and sim_message_eventcallback_openglcameraview). They can be enabled on a plugin-base via the new simEnableEventCallback API function.

New in CoppeliaSim 3.0.5 (Oct 1, 2014)

  • 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 Dynamics 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 (simros_strmcmd_get_depth_sensor_data), 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.
  • Added the option to run simulations with threaded rendering: this allows, in some cases, to drastically accelerate simulation cycles.
  • Added a new scene: fastClientServerCommunication.ttt. It illustrates the threaded rendering mode.
  • Fixed a bug affecting the regular API function simGetObjectVelocity.
  • Added a new remote API function: simxGetObjectVelocity.
  • Added a new regular API function: simRegisterJointCtrlCallback. It allows to do low-level control of a joint via a plugin for instance. This is offered as an alternative to joint control callback scripts.
  • Added more predefined page configurations.
  • Added a gamepad interface to the V-REP ROS plugin. 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.
  • The shared library of the remote API client is now available in 32/64 bit (remoteApi.dll, remoteApi.so, remoteApi.dylib, remoteApiJava.dll, libremoteApiJava.so, libremoteApi.dylib).
  • Added a new regular API function: simGetSystemTimeInMs for more flexibility to measure time also across V-REP's boundary.

New in CoppeliaSim 3.0.4 (Oct 1, 2014)

  • Added 2 optional callbacks, that allow to access and modify the main window rendered image, or any camera view rendered image: sim_message_eventcallback_openglframe & sim_message_eventcallback_openglcameraview.
  • 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 VC++ 2010 project files for most projects in the programming folder. Until now, only VC++ 2005 project files (Windows) and makefiles (MacOSX & Linux) were provided.
  • Added 4 remote API helper functions: simxPackFloats, simxUnpackFloats, simxPackInts and simxUnpackInts.
  • Added new functions for easier data retrieval of several objects from a remote API client or a ROS node: simxGetObjectGroupData and simRosGetObjectGroupData.
  • Added new messages that allow to track shape picking (based on rendering or geometric calculations): sim_message_pick_select_down, sim_message_prox_sensor_select_down, sim_message_prox_sensor_select_up, sim_message_eventcallback_pickselectdown, sim_message_eventcallback_proxsensorselectdown and sim_message_eventcallback_proxsensorselectup
  • 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
  • Added a new regular API function: simGetIkGroupMatrix. It allows for example to retrieve the Jacobian.
  • Removed the annoying watermark appearing when recording a movie (Simulated with V-REP)

New in CoppeliaSim 3.0.3 (Oct 1, 2014)

  • 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 3 new regular API functions to create and edit paths programmatically: simCreatePath, simInsertPathCtrlPoints and simCutPathCtrlPoints.
  • Added also following new regular API functions: simGetJointMode, simGetJointTargetPosition and simGetJointTargetVelocity.
  • Added 3 new object parameter IDs (3020-3022) that allow setting the initial rotational velocity of a dynamically enabled shape.
  • Added an event callback message (sim_message_eventcallback_opengl) that allows to draw with openGl commands into the V-REP scene, from a plugin.
  • Added a toolbar button that facilitates object/model re-instanciation: this allows modifying in a same way an unlimited number of same robots. Refer to the object/model can transfer or accept DNA checkbox in the object common properties.
  • 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 simSetIntegerParameter(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/components/sensors/Hokuyo URG 04LX UG01_Multithreaded.ttm. It demonstrates a laser scanner capable of using multithreading for potential speed increases.
  • 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.
  • The remote API on the client side can now be instanciated as many times as needed, allowing to create several parallel communication lines from a same client (i.e. process). One can for instance now chose to send heavy data via a different communication line than lightweight data (simxStart will have to be called twice in that case).
  • Added following new remote API functions: simxQuery, simxGetAndClearStringSignal and simxCreateDummy.
  • Added following new ROS interface services/publishers: simRosGetAndClearStringSignal and simRosCreateDummy.

New in CoppeliaSim 3.0.2 (Oct 1, 2014)

  • Corrected a bug related to convex shapes
  • Improved the URDF importer (scaling is now taken into account, bug linked to forbidden chars in object names was fixed, 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: simGetObjectVelocity (slightly different from the already existing simGetVelocity function).
  • Added a new remote API function: simxAppendStringSignal. This allows to easily send data that is automatically buffered on V-REP.
  • Added a new ROS interface 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 a new type of embedded script: callback scripts, that allow to write custom low-level joint controllers or contact handlers.
  • 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 simSetIntegerParameter(sim_intparam_work_thread_count,coreCount). Refer also to the default main script, that was slightly modified to accomodate for that.

New in CoppeliaSim 3.0.1 (Mar 1, 2013)

  • Extensive support for convex meshes
  • Integrated convex decomposition function
  • Improved URDF importer

New in CoppeliaSim 3.0.0 (Mar 1, 2013)

  • V-REP is now open source
  • Collada importer / exporter
  • URDF importer

New in CoppeliaSim 2.6.8 (Nov 30, 2012)

  • Add-ons are now supported: they can run in the background, or be called as a function, when needed
  • Added 3 new regular API functions: simFileDialog, simMsgBox and simCreateDummy
  • Textured shapes can now also be grouped
  • The bounding box of pure grouped shapes can now also be reoriented
  • The shape dynamic 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: simGetShapeMassAndInertia and simSetShapeMassAndInertia.
  • Added 2 new regular API functions: simGroupShapes and simUngroupShape.
  • Added more than 80 new functions (additional API 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.

New in CoppeliaSim 2.6.7 (Sep 21, 2012)

  • Added a new remote API function: simxPauseCommunication. This allows to set several value on the server side (i.e. V-REP) at the exact same time.
  • Added a new type of object: mirrors. They can act as regular mirrors, or they can operate as auxiliary clipping planes.
  • 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 v_repExtMtb plugin to a Qt project. Source files are located in the /programming directory. Refer to the section on plugins for details how to compile this plugin. The plugin binary is in the main directory.
  • Converted the v_repExtSimpleFilter plugin to a Qt project. Source files are located in the /programming directory. 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 in the /programming directory. The executable binary is in the main directory.
  • Added source code in /programming/matrixCalc that allows handling transformation calculations inside an external application (code can be embedded into your application). Refer to the matrix calculation documentation.
  • Added source code in /programming/externalIk that allows handling complex kinematic calculations inside an external application (code can be embedded into your application). Refer to the external kinematics documentation.
  • Added a project that demonstrates the external kinematics functionality: externalIkDemo. The source code is located in the /programming directory. The executable binary is in the main directory.
  • Added a new demo scene: "externalIkDemo.ttt". It demonstrates the external kinematics 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: simRMLMoveToPosition and simRMLMoveToJointPositions

New in CoppeliaSim 2.6.6 (Aug 24, 2012)

  • The ROS plugin 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.
  • Integrated the Reflexxes Motion Library type IV via a plugin. Following new functions can now be called from C/C++, Lua, the remote API, and from a ROS node: simRMLPosition and simRMLVelocity. Have a look at the related demo scene: "reflexxesMotionLibraryType4Demo.ttt"
  • Added 4 new API functions: simGetObjectQuaternion, simSetObjectQuaternion, simBuildMatrixQ and simGetQuaternionFromMatrix (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
  • Simplified the way the remote API function simxGetUIEventButton operates
  • New scene: "reflexxesMotionLibraryType4Demo.ttt"
  • New model: "kinect - closest point calculation.ttm"
  • Added new graph data streams: Joint velocity, object velocity, object velocity x, object velocity y, object velocity y, and object rotation velocity.
  • Added a new tutorial: ROS tutorial.

New in CoppeliaSim 2.6.5 (Jul 9, 2012)

  • Renamed following remote API functions/constants to avoid confusion: simxGetInMessageInfo, simxGetOutMessageInfo, simx_headeroffset_message_id.
  • Added a user manual section about how to extend the remote API
  • Fixed a few bugs related to the Linux/Mac version of the 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 dialog (Assembling button)
  • Added a Python binding for the Remote API
  • Added a Java binding for the Remote API
  • Added a Matlab binding for the Remote API
  • Added a Urbi binding for the Remote API
  • Added a first interface to ROS. This version is temporary and will be updated in next release

New in CoppeliaSim 2.6.4 (Jul 9, 2012)

  • A new powerful mechanism was developed to allow easy access to V-REP API functions from external applications (e.g. robots): the remote API. Now V-REP supports 4 different programming approaches
  • simSerialPortOpen, simSerialPortClose, simSerialPortSend and simSerialPortRead are declared deprecated. They are replaced by simSerialOpen, simSerialClose, simSerialSend, simSerialRead and simSerialCheck.
  • 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

New in CoppeliaSim 2.6.3 (Apr 4, 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 custom user interface edit mode
  • Added a new video compression library, based on the FFmpeg library
  • 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

New in CoppeliaSim 2.5.12 (Dec 12, 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.
  • Renamed 2D elements. They are now called custom user interfaces, 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)
  • Added a new toolbar button to automatically adjust the main view to the scene, or selected objects
  • Added a new API function: simCameraFitToView
  • Added a new API function: simIsHandleValid.
  • Added following API functions: simPersistentDataWrite and simPersistentDataRead.
  • Added a new item in the object common properties dialog ("ignored for view-fitting")
  • New model: "auto fitting camera.ttm"
  • Removed scene: "youBotDemo.ttt"

New in CoppeliaSim 2.5.11 (Nov 18, 2011)

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

New in CoppeliaSim 2.5.10 (Nov 18, 2011)

  • Removed the object common property visible. This option was a little bit confusing, and now object 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 dialog
  • Removed the shape tracing option in order to simplify the shape properties dialog. 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 dialog was 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"

New in CoppeliaSim 2.5.9 (Sep 9, 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"

New in CoppeliaSim 2.5.8 (Jul 27, 2011)

  • Improved the simAddParticleObject function to also support linear and quadratic drag parameters
  • Added more arguments to the API functions simGetRenderingSensorImage and simGetRenderingSensorDepthBuffer
  • New API functions: simGetArrayParameter and simSetArrayParameter
  • New API functions: simSetIkGroupProperties and simSetIkElementProperties
  • 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 Boolean 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 rendering sensor filter component: blob detection
  • New joints added to the scene are in Force/torque 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"
  • 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"

New in CoppeliaSim 2.5.7 (Jul 27, 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"

New in CoppeliaSim 2.5.6 (Jun 20, 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 boolean 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)

New in CoppeliaSim 2.5.5 (Jun 7, 2011)

  • New API commands to build transformation interpolations: simGetRotationAxis and simRotateAroundAxis
  • New API command to launch executables: simLaunchExecutable
  • 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 drawing object property: sim_drawing_itemtransparency
  • 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

New in CoppeliaSim 2.5.4 (Jun 7, 2011)

  • Completely reworked user manual, running in web-browser now. Fixed all brocken links
  • New V-REP plugin "v_repExtWii.dll" that exports 4 new commands to interact with a wiimote device: simExtWiiStart, simExtWiiEnd, simExtWiiSet and simExtWiiGet
  • Multiple simultaneous script edition is now suppored
  • New API command to apply non-central forces: simAddForce
  • New API command to temporarily forbid thread switches: simSetThreadAutomaticSwitch
  • 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"

New in CoppeliaSim 2.5.3 (Jun 7, 2011)

  • Extended the functionality of the simSerialPortRead Lua function
  • Extended the functionality of the simUnpackInts and simUnpackFloats functions
  • Extended the functionality of the simAdjustView function
  • New API commands for even more inter-thread synchronization control: simSetThreadResumeLocation and simResumeThreads
  • New API command to control the show state of an auxiliary console window: simAuxiliaryConsoleShow
  • New API commands to set and retrieve various values linked to objects (will be extended on a regular basis): simGetObjectIntParameter, simSetObjectIntParameter, simGetObjectFloatParameter, simSetObjectFloatParameter, simGetObjectStringParameter and simSetObjectStringParameter
  • New API command to adjust the number of displayed frames during simulation: simSetSimulationPassesPerRenderingPass
  • New V-REP plugin "v_repExtCam.dll" (using "escape.dll") that exports 4 new commands to acquire webcam images: simExtCamStart, simExtCamEnd, simExtCamInfo and simExtCamGrab
  • New model: "plugin enumerator.ttm"
  • New model: "Mesa SR4000.ttm"
  • New model: "Snake.ttm"
  • New model: "Walking Bill.ttm"
  • New model: "wiimote.ttm"
  • New model: "Barrett Hand.ttm"
  • New model: "K-Junior.ttm"
  • New model: "webcam.ttm"
  • Corrected a bug where simHandleModule 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 modelling 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

New in CoppeliaSim 2.5.2 (Jun 7, 2011)

  • Heightfields are now supported and can be imported from *.tga, *.csv or *.txt files
  • New API commands to handle views and floating views: simFloatingViewAdd, simFloatingViewRemove and simAdjustView
  • New API command to create heightfields: simCreateHeightfieldShape
  • New API command to register contact callbacks for custom handling of contacts: simRegisterContactCallback
  • 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

New in CoppeliaSim 2.5.1 (Jun 7, 2011)

  • Corrected bug in API function simGetObjectOrientation (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: simGetScriptSimulationParameter & simSetScriptSimulationParameter (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

New in CoppeliaSim 2.5.0 (Jun 7, 2011)

  • New API commands to import/export meshes: simImportMesh and simExportMesh
  • New API commands to create shapes and to extract the mesh of a shape: simCreateMeshShape, simCreatePureShape and simGetShapeMesh
  • New API command to create joints: simCreateJoint
  • API commands simGetShapeVertex and simGetShapeTriangle are declared deprecated
  • New event callback messages: sim_message_eventcallback_renderingpass and sim_message_eventcallback_modulehandleinsensingpart
  • 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 API commands to create banners: simAddBanner and simRemoveBanner
  • New model: object locator.ttm
  • Updated the default client application vrep.exe, and the example 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)

New in CoppeliaSim 2.4.15 (Jun 7, 2011)

  • New API command to implement non-blocking thread sections for external commands: simSetThreadIsFree
  • New API commands similar to bidirectional communication pipes: simTubeOpen, simTubeClose, simTubeRead, simTubeWrite, simTubeStatus
  • New API command to set the maximum force/torque a joint can exert: simSetJointForce
  • New API commands to create and handle auxiliary console windows: simAuxiliaryConsoleOpen, simAuxiliaryConsolePrint, simAuxiliaryConsoleClose
  • 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

New in CoppeliaSim 2.4.14 (Jun 7, 2011)

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

New in CoppeliaSim 2.4.13 (Jun 7, 2011)

  • Warning message appears now when a scene was not saved (when leaving or discarding a scene)
  • Improved and corrected the BubbleRob tutorial
  • Corrected a small bug that appeared with joints in hybrid dependent mode
  • New dongle drivers
  • New API commands to handle particles: simAddParticleObject, simRemoveParticleObject and simAddParticleObjectItem
  • new API commands for serial port communication: simSerialPortOpen, simSerialPortClose, simSerialPortSend and simSerialPortRead
  • New API command to retrieve information on contacts: simGetContactInfo
  • 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

New in CoppeliaSim 2.4.12 (Jun 7, 2011)

  • Corrected a small bug in the simMoveToJointPositions API command applied to joints in force/torque mode
  • New API commands: simSetShapeColor, simResetDynamicObject and simSetJointMode
  • New model: YouBot.ttm
  • New model: e-puck.ttm
  • New scene: youBotDemo.ttt
  • New scene: e-puckDemo.ttt