Code Monkey home page Code Monkey logo

cyberbotics / webots Goto Github PK

View Code? Open in Web Editor NEW
3.0K 77.0 1.6K 4.09 GB

Webots Robot Simulator

Home Page: https://cyberbotics.com

License: Apache License 2.0

Makefile 3.99% HTML 0.50% C++ 55.02% C 24.13% Shell 0.26% M 0.01% MATLAB 0.42% Python 6.65% Java 0.19% JavaScript 7.04% Objective-C 0.01% CSS 0.28% Assembly 0.10% Mercury 0.01% PHP 0.03% Lua 0.19% GLSL 0.93% M4 0.01% Batchfile 0.01% SWIG 0.23%
robotics robot simulator simulation ros physics-engine 3d-engine fluid-dynamics multi-platform autonomous-vehicles

webots's Introduction

Webots: open-source robot simulator

Webots Software License User Guide Reference Manual
Stars Downloads Contributions Contributors GitHub Discussions Chat

Webots Screenshot

Webots provides a complete development environment to model, program and simulate robots, vehicles and mechanical systems.

Download

Get pre-compiled binaries for the latest release, as well as older releases and nightly builds.

Check out installation instructions:

Linux Windows macOS

Build from Source

If you prefer to compile Webots from source, read the contributing guidelines.

Continuous Integration Nightly Tests

master branch Linux build (master) Windows build (master) macOS build (master)
develop branch Linux build (develop) Windows build (develop) macOS build (develop)

About us

Webots was originally designed at EPFL in 1996 and then further developed and commercialized by Cyberbotics since 1998. In December 2018, Webots was open sourced. Since then, Cyberbotics continues to develop Webots thanks to paid customer support, training, consulting for industry and academic research projects.

Contact us to discuss your custom robot simulation projects.

webots's People

Contributors

ad-daniel avatar alxy avatar benjamindeleze avatar benjaminhug8 avatar brettle avatar chaytanyasinha avatar davidmansolino avatar fabienrohrer avatar gautierarcin avatar github-actions[bot] avatar gokulp01 avatar jean-eudes-le-retour avatar joachimhgg avatar knmcguire avatar leojhonsong avatar llessieux avatar lukicdarkoo avatar mael25 avatar michou214 avatar omichel avatar prubhtej avatar shufflewire avatar simon-steinmann avatar stefaniapedrazzi avatar thomas-feldmeier avatar thomasoliverkimble avatar tpjnorton avatar valeriemichel avatar willem3141 avatar ygoumaz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

webots's Issues

webots-bin fails to link with OIS library on Linux

Description
I'm getting the following linking error when building webots-bin on both Ubuntu 18.04 and Centos 7:

# linking  ../../bin/webots-bin
build/release/WbJoystickInterface.o: In function `WbJoystickInterface::init()':
WbJoystickInterface.cpp:(.text+0x64e): undefined reference to `OIS::InputManager::createInputObject(OIS::Type, bool, std::string const&)'
WbJoystickInterface.cpp:(.text+0xa9f): undefined reference to `OIS::InputManager::createInputSystem(std::multimap<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > >&)'

I've carefully followed the build instructions for Linux described in the Linux installation wiki page and installed all of the required dependencies plus the optional dependencies for the OpenStreeMap importer.

I noticed dependencies/Makefile.linux is setup to download a pre-built OIS 1.4.0 library. I first suspected that either:

  1. the pre-built library had some strange conditional compilation that left out the definitions of createInputObject and createInputSystem or
  2. it was built with a GCC version that has an incompatible ABI

so I removed libOIS from dependencies/Makefile.linux, installed the libOIS 1.3.0 library from Ubuntu's repository and changed src/webots/Makefile to link against this libOIS version but I still got the same result, so I'm not sure what's going on.

Steps to Reproduce

  1. Install the dependencies listed in the Linux installation wiki page
  2. Installed the dependencies listed in the OpenStreetMap Importer page
  3. git submodule init
  4. git submodule update
  5. make -j 4

System

  1. Ubuntu machine
  • Operating System: Ubuntu 18.04
  • CPU Architecture: x86_64
  • C++ Compiler: Gcc 7.3 (the default on Ubuntu 18.04)
  • Linker: GNU LD 2.30
  1. Centos machine
  • Operating System: Centos 7.6.1810
  • CPU Architecture: x86_64
  • C++ Compuler: Gcc 4.8.5 (the default on Centos 7)
  • Linker: GNU LD 2.27-34.base.el7

Additional context
For reference here is the linking command being used on my machine:

g++ -rdynamic -s -o ../../bin/webots-bin build/release/WbRobotWindowTransportLayer.o ... (long list of object files) .. build/release/WbZoom.moc.o ../../dependencies/lua-5.2.3/src/liblua.a ../wren/libwren.a ../glad/libglad.a -Wl,-rpath ../../lib -L../../lib -lQt5Core -lQt5Network -lQt5Gui -lQt5OpenGL -lQt5WebSockets -lQt5Widgets -lQt5PrintSupport -lQt5WebEngine -lQt5WebEngineCore -lQt5WebEngineWidgets -lQt5Multimedia -lQt5MultimediaWidgets -lQt5Sql -lQt5Sensors -lQt5WebChannel -lQt5Xml -lopenal -lGL -lode -lusb -lGLU -ldl -lpci -lOIS -lcrypto -lpico -lfreetype -lassimp

Crash when Exporting HTML5 / VRML model

Describe the Bug
Webots crashes when exporting some world.

Steps to Reproduce

  1. Open youbot.wbt
  2. Export it to VRML or X3D

System

  • Operating System: Windows 10

Check for updates... TLS initializaton failed

On R2019a on Windows 10 Pro... when using menu... Tools -> Check for updates... pop up message indicates...

Cannot get the Webots current version due to: "TLS initializaton failed"

Unable to Load JPEG Textures from cmd.exe

Describe the Bug
JPEG textures doesn't load and produce the following error message:

WARNING: Texture image size of 'C:/Program Files/Webots/projects/objects/obstacles/protos/textures/oil_barrel_bottom_occlusion.jpg' is not a power of two: rescaling it from -1x-1 to 0x0.
WARNING: OilBarrel (PROTO) > Shape > PBRAppearance > ImageTexture: Cannot load texture 'C:/Program Files/Webots/projects/objects/obstacles/protos/textures/oil_barrel_bottom_occlusion.jpg': Unsupported image format.

This bug was reported by several users (e.g. #326) and I was finally able to reproduce it by starting Webots from cmd.exe. It is working fine when launched from the desktop shortcut.

Steps to Reproduce

  1. Launch Webots with cmd.exe

Expected behavior
The textures should load without any problem.

Screenshots
capture

System

  • Operating System: Windows 10 (only from cmd.exe)
  • PATH environmental variable from cmd.exe:
C:\Program Files\Python37\Scripts\;C:\Program Files\Python37\;C:\msys64\home\David\develop\webots-develop\webots\msys64\mingw64\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\DLR\Sumo\bin\;C:\Program Files (x86)\DLR\Sumo\tools\;C:\Program Files\MATLAB\R2018a\bin;C:\Program Files\MATLAB\R2017a\runtime\win64;C:\Program Files\MATLAB\R2017a\bin;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\dotnet\;C:\Program Files\Git LFS;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Python37\Scripts\;C:\Python37\;C:\msys64\home\David\develop\webots-develop\webots\msys64\mingw64\bin;C:\Users\David\AppData\Local\Microsoft\WindowsApps;C:\Users\David\AppData\Local\atom\bin;C:\Users\David\AppData\Local\Microsoft\WindowsApps;C:\Python27;C:\Program Files\Java\jdk1.8.0_121\bin;

Discourage the use of the Appearance node

Since our global rendering improvement, the users should use the PBRAppearance node instead of the Appearance node.

The "Add node" dialog displays the Appearance more evidently than the PBRAppearance node.

The Appearance item could be modified to discourage its use, for example:

  • by adding a suffix such as [Prefer PBRAppearance].
  • by rendering it as disabled (grey).

Wrong Lidar Point Height when Tilt Angle is Non-Zero.

Describe the Bug
When the tilt angle of a lidar is not 0, it may happen that the lidar points are 'too high'.

Steps to Reproduce

  1. Can easily be reproduce with the Velodyne HLD64 and a flat ground.
  2. Or with this world: test0.zip

Expected behavior
The lidar point should all be at the same height than the floor.

Screenshots
lidar

System
System: Windows 10 64-bit
Processor: Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz
Number of cores: 4
OpenGL vendor: NVIDIA Corporation (0x10de)
OpenGL renderer: GeForce GTX 970/PCIe/SSE2 (0x13c2)
OpenGL version: 4.6.0 NVIDIA 416.94

Re-order Guided Tour

We should re-order the guided tour because the tinkerbot is very nice but takes long to load and gives a bad first impression.
Here is what I propose:

projects/robots/k-team/khepera3/worlds/khepera3_gripper.wbt 20
projects/robots/kuka/youbot/worlds/youbot.wbt 40
projects/robots/robotis/darwin-op/worlds/robotis_op3_motion_player.wbt 20
projects/samples/rendering/worlds/animated_skin.wbt 30
projects/robots/tinkerbots/worlds/tinkerbots_demo.wbt 20
projects/robots/irobot/create/worlds/create.wbt 60
projects/samples/demos/worlds/stewart_platform.wbt 26
projects/vehicles/worlds/city.wbt 60
projects/robots/clearpath/pr2/worlds/pr2.wbt 38
projects/robots/robotis/bioloid/worlds/bioloid_dog.wbt 12
projects/robots/adept/pioneer3/worlds/pioneer3at.wbt 14
projects/robots/robotis/darwin-op/worlds/soccer.wbt 12
projects/robots/softbank/nao/worlds/nao_demo.wbt 20
projects/robots/bluebotics/shrimp/worlds/shrimp.wbt 25
projects/robots/epfl/biorob/worlds/ghostdog.wbt 20
projects/robots/surveyor/worlds/srv-1.wbt 20
projects/robots/neuronics/ipr/worlds/ipr_factory.wbt 40
projects/samples/demos/worlds/uneven_terrain.wbt 60
projects/robots/fujitsu/hoap2/worlds/hoap2_walk.wbt 30
projects/robots/micromagic/mantis/worlds/mantis.wbt 30
projects/robots/gctronic/e-puck/worlds/e-puck_line_demo.wbt 60
projects/robots/nasa/worlds/sojourner.wbt 45
projects/robots/fujitsu/hoap2/worlds/hoap2_sumo.wbt 65
projects/robots/epfl/lis/worlds/blimp.wbt 20

Any other suggestion is welcome.

ElevationGrid.color and colorPerVertex fields ignored

Documentation page concerned
https://www.cyberbotics.com/doc/reference/elevationgrid

What is the problem with the current documentation?
The documentation documents the color and colorPerVertex fields as if they were implemented. However, they appear to be simply ignored as they don't affect the color of the ElevationGrid if changed.

Describe how you would fix it
We should either remove these field from the documentation, or say explicitly that they are ignored. Alternatively, we may implement support for color and colorPerVertex by simply generating a texture on the fly that corresponds to the specified color and colorPerVertex arguments.

Java Controllers not Working from Release

Describe the Bug
In the development environment Java controllers are working fine, but from the release they are not working.

Steps to Reproduce

  1. Run the Java controller from the Windows beta.

Screenshots

INFO: Slave: Starting: "javaw.exe -classpath "C:/Program Files/Webots/lib/java\Controller.jar;C:/PROGRA~1/Webots/projects/LANGUA~1/java/CONTRO~1/Slave/" -Djava.library.path="C:/Program Files/Webots/lib/java" Slave "
[Slave] Native code library failed to load. See the chapter on Dynamic Linking Problems in the SWIG Java documentation for help.
[Slave] java.lang.UnsatisfiedLinkError: C:\Program Files\Webots\lib\java\JavaController.dll: Can't load AMD 64-bit .dll on a IA 32-bit platform
WARNING: 'Slave' controller exited with status: 1.

System

  • Operating System: Windows 10

Additional context
Environmental variable set:
capture

Regenerate Documentation

Describe the Bug
We forget to regenerate the documentation before the release of R2019a, therefore the documentation of some objects is not up to date.

Ros Controller Crashes with Panoramic View Recorder

Describe the Bug
The controller is crashing with the panoramic_view_recorder simulation.

Steps to Reproduce

  1. Launch roscore.
  2. Open the 'panoramic_view_recorder.wbt' world
  3. Launch the 'webots_ros/panoramic_view_recorder' ros node.

Screenshots
capture du 2018-12-13 12-40-41

System

  • Operating System: Linux Ubuntu 16.04
  • Ros version: kinetic

Missing Msys64 Packages in Windows Release

Describe the Bug
Most of the 'optional' msys64 packages are not included in the release. It is good to make them optional for the development, but for the release they should be mandatory.

Steps to Reproduce

  1. Open the robots/robotis/darwin-op/soccer world.
    2 open the robot-window.

Expected behavior
The robot window should run smoothly and it should be possible to re-compile it from the release.

Screenshots
capture

System

  • Windows 10 release

GL_OUT_OF_MEMORY error and wrong rendering with all PBR worlds on VMWare

Describe the Bug
Webots display a GL_OUT_MEMORY error when opening any world file with a TexturedBackground node.

Steps to Reproduce

  1. Open for example samples / devices / battery.wbt
  2. See error printed in stdout (and the background is all black)

Expected behavior
No error and the background rendered properly.

System

  • Operating System: Linux Ubuntu 18.04 running in VMware on a Windows 10 host
  • Graphics Card: GeForce GTX 970.

Additional context
If I replace the TexturedBackground with a non-PBR Background and a DirectionalLight, it works nicely.

Webots crash

Describe the Bug

I'm still not able to have a precise procedure to reproduce the crash.
When reverting a world, sometimes, Webots crashes with this stack:

Thread 0 Crashed:: CrBrowserMain  Dispatch queue: com.apple.main-thread
0   com.cyberbotics.webots        	0x000000010d8a723f wren::PostProcessingEffect::firstPass() const + 63 (PostProcessingEffect.hpp:201)
1   com.cyberbotics.webots        	0x000000010d93e5e3 wren::Viewport::applyAmbientOcclusion() + 115 (Viewport.cpp:185)
2   com.cyberbotics.webots        	0x000000010d8c420c wren::Scene::renderToViewport() + 1916 (Scene.cpp:416)
3   com.cyberbotics.webots        	0x000000010d8c2d73 wren::Scene::renderToViewports(std::__1::vector<wren::Viewport*, std::__1::allocator<wren::Viewport*> >) + 2403 (Scene.cpp:266)
4   com.cyberbotics.webots        	0x000000010d8c2392 wren::Scene::render() + 1122 (Scene.cpp:223)
5   com.cyberbotics.webots        	0x000000010d8c91c0 wr_scene_render + 48 (Scene.cpp:858)
6   com.cyberbotics.webots        	0x000000010d6c96b5 WbWrenWindow::renderNow() + 325 (WbWrenWindow.cpp:225)
7   com.cyberbotics.webots        	0x000000010d6a4109 WbView3D::renderNow() + 201 (WbView3D.cpp:1343)

System

  • Operating System: macOS Mojave
  • Graphics Card: AMD Radeon PRO 560X

Qt Platform Plugin Initialization Problem on Windows Release

Describe the Bug
When starting Webots I get an error message saying that the Qt platform plugin could not be initialized.

Steps to Reproduce

  1. Start Webots

Expected behavior
Webots should start without error.

Screenshots
capture

System

  • Windows 10 release.

Webots assertion when adding a RoadLine

Steps to Reproduce

  1. Open projects/vehicles/worlds/city.wbt
  2. Select the first "CurvedRoadSegment.lines" field
  3. Click on the "Add node" button
  4. Webots crashes with the stack above.

Additional context

Stack:

Application Specific Information:
Assertion failed: (acceptedNode), function doesFieldRestrictionAcceptNode, file nodes/utils/WbNodeUtilities.cpp, line 528.
 

Thread 0 Crashed:: CrBrowserMain  Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib        	0x00007fff732cfb86 __pthread_kill + 10
1   libsystem_pthread.dylib       	0x00007fff73385c50 pthread_kill + 285
2   libsystem_c.dylib             	0x00007fff73239268 __abort + 144
3   libsystem_c.dylib             	0x00007fff732391d8 abort + 142
4   libsystem_c.dylib             	0x00007fff73201868 __assert_rtn + 320
5   com.cyberbotics.webots        	0x000000010ce3b24e (anonymous namespace)::doesFieldRestrictionAcceptNode(WbField const*, QString const&) + 398 (WbNodeUtilities.cpp:528)
6   com.cyberbotics.webots        	0x000000010ce3ab6e WbNodeUtilities::isAllowedToInsert(WbField const*, QString const&, WbNode const*, QString&, WbNode::NodeUse, QString, bool) + 126 (WbNodeUtilities.cpp:1410)
7   com.cyberbotics.webots        	0x000000010caaa5f8 WbAddNodeDialog::buildTree() + 1704 (WbAddNodeDialog.cpp:382)
8   com.cyberbotics.webots        	0x000000010caa96be WbAddNodeDialog::WbAddNodeDialog(WbNode*, WbField*, int, QWidget*) + 5294 (WbAddNodeDialog.cpp:158)
9   com.cyberbotics.webots        	0x000000010caac913 WbAddNodeDialog::WbAddNodeDialog(WbNode*, WbField*, int, QWidget*) + 51 (WbAddNodeDialog.cpp:163)
10  com.cyberbotics.webots        	0x000000010ccd3ede WbSceneTree::addNew() + 1374 (WbSceneTree.cpp:866)

Camera Overlay Wrong at First Step

Describe the Bug
At first step the camera overlays are wrong.

Steps to Reproduce

  1. Open the soccer.wbt world in pause mode.
  2. Execute one step and look at the overlay.

Screenshots
soccer

System

  • Operating System: Windows 10

GTAO Radius and Activation not Exported to X3D

Describe the Bug
The GTAO radius and activation is not exported to X3D

Expected behavior
The value of the SSAO and SSAOradius fields should be set in the X3D Environment node depending on the Viewpoint.ambiantOcclusion field.

Binaries strip

Binaries (particularly Webots) are stripped (symbols are removed) in release mode. This has the advantage of reduce the binary size, but has the cons to hide the stacks of the crash reports.

It's simple to drop this, but a preliminary investigation about the binary size increase would be good.

Impossible to Recompile the gui_tracker on the Windows Release

Describe the Bug
It is impossible to recompile this robot-window from the Windows release.

Steps to Reproduce

  1. Open the samples/howto/guit_tracker world.
  2. Re-compile the tracking_window robot-window.

Expected behavior
The robot-window should compile without any error or warning from the release

Screenshots

build/release/Tracker.o:Tracker.cpp:(.text+0x42c): undefined reference to `QArrayData::deallocate(QArrayData*, unsigned long, unsigned long)'
build/release/Tracker.o:Tracker.cpp:(.text+0x42c): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `QArrayData::deallocate(QArrayData*, unsigned long, unsigned long)'
build/release/Tracker.o:Tracker.cpp:(.text+0x441): undefined reference to `QArrayData::deallocate(QArrayData*, unsigned long, unsigned long)'
build/release/Tracker.o:Tracker.cpp:(.text+0x441): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `QArrayData::deallocate(QArrayData*, unsigned long, unsigned long)'
build/release/Tracker.o:Tracker.cpp:(.text+0x45c): undefined reference to `QArrayData::deallocate(QArrayData*, unsigned long, unsigned long)'
build/release/Tracker.o:Tracker.cpp:(.text+0x45c): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `QArrayData::deallocate(QArrayData*, unsigned long, unsigned long)'
build/release/Tracker.o:Tracker.cpp:(.text+0x4cd): undefined reference to `QArrayData::deallocate(QArrayData*, unsigned long, unsigned long)'
build/release/Tracker.o:Tracker.cpp:(.text+0x4cd): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `QArrayData::deallocate(QArrayData*, unsigned long, unsigned long)'

System

  • Windows 10 release

Crash During VRML export

Describe the Bug
Webots crashes during the VRML exportation of the city.wbt world.

Additional context
This is the stack:

#0  0x00000000007b4dee in WbField::value (this=0x0) at vrml/WbField.hpp:87
#1  0x0000000000924b0f in WbPbrAppearance::exportNodeSubNodes (this=0xbf55320, 
    writer=...) at nodes/WbPbrAppearance.cpp:527
#2  0x0000000000906c05 in WbNode::exportNodeContents (this=0xbf55320, 
    writer=...) at vrml/WbNode.cpp:1098
#3  0x0000000000906c5c in WbNode::writeExport (this=0xbf55320, writer=...)
    at vrml/WbNode.cpp:1104
#4  0x0000000000905bcb in WbNode::write (this=0xbf55320, writer=...)
    at vrml/WbNode.cpp:963
#5  0x00000000009937d3 in WbSFNode::write (this=0xbf55280, writer=...)
    at vrml/WbSFNode.cpp:57
#6  0x000000000085ad85 in WbField::write (this=0xbf551a0, writer=...)
    at vrml/WbField.cpp:115
#7  0x0000000000906a7c in WbNode::exportNodeSubNodes (this=0xbf55010, 
    writer=...) at vrml/WbNode.cpp:1079
#8  0x0000000000906c05 in WbNode::exportNodeContents (this=0xbf55010, 
    writer=...) at vrml/WbNode.cpp:1098
#9  0x0000000000906c5c in WbNode::write

Missing Supervisor in Propeller World

Describe the Bug
The supervisor field of the robots in propeler.wbt should be set to TRUE.

Screenshots

[axial_rotor] Error: ignoring illegal call to wb_supervisor_set_label() in a 'Robot' controller.
[axial_rotor] Error: this function can only be used in a 'Supervisor' controller.
[axial_rotor] Error: ignoring illegal call to wb_supervisor_set_label() in a 'Robot' controller.
[axial_rotor] Error: this function can only be used in a 'Supervisor' controller.

Moc Missing on Windows Release

Describe the Bug
moc.exe is required to compile some of the controllers/plugins.

Steps to Reproduce

  1. Open the vehicles/city world.
  2. Try to recompile the automobile_window robot-window.

Expected behavior
The controller should compile smoothly.

Screenshots

make: moc: Command not found
make: *** [C:/Program Files/Webots/resources/Makefile.include:706: build/GeneralInformationWidget.moc.cpp] Error 127

System

  • Windows 10 release

Recompile error for python

Describe the Bug
I followed the steps described here. MSYS2 has all requirements. However I get the following error after issuing make command

swig -c++ -python -outdir "C:/Program\ Files/Webots/lib/python36/" -I"C:/Program\ Files/Webots/include/controller/cpp" -I"C:/Program\ Files/Webots/include/controller/c" -o controller36.cpp controller.i
controller.i:115: Error: Unable to find 'webots/Device.hpp'
controller.i:121: Error: Unable to find 'webots/Accelerometer.hpp'
controller.i:127: Error: Unable to find 'webots/Brake.hpp'
controller.i:154: Error: Unable to find 'webots/camera_recognition_object.h'
controller.i:299: Error: Unable to find 'webots/Camera.hpp'
controller.i:307: Error: Unable to find 'webots/Compass.hpp'
controller.i:313: Error: Unable to find 'webots/Connector.hpp'
controller.i:367: Error: Unable to find 'webots/ImageRef.hpp'
controller.i:368: Error: Unable to find 'webots/Display.hpp'
controller.i:374: Error: Unable to find 'webots/DistanceSensor.hpp'
controller.i:385: Error: Unable to find 'webots/Emitter.hpp'
controller.i:396: Error: Unable to find 'webots/Field.hpp'
controller.i:402: Error: Unable to find 'webots/GPS.hpp'
controller.i:408: Error: Unable to find 'webots/Gyro.hpp'
controller.i:414: Error: Unable to find 'webots/InertialUnit.hpp'
controller.i:420: Error: Unable to find 'webots/Joystick.hpp'
controller.i:426: Error: Unable to find 'webots/Keyboard.hpp'
controller.i:432: Error: Unable to find 'webots/LED.hpp'
controller.i:440: Error: Unable to find 'webots/lidar_point.h'
controller.i:497: Error: Unable to find 'webots/Lidar.hpp'
controller.i:505: Error: Unable to find 'webots/LightSensor.hpp'
controller.i:511: Error: Unable to find 'webots/utils/Motion.hpp'
controller.i:517: Error: Unable to find 'webots/Motor.hpp'
controller.i:542: Error: Unable to find 'webots/mouse_state.h'
controller.i:544: Error: Unable to find 'webots/Mouse.hpp'
controller.i:569: Error: Unable to find 'webots/Node.hpp'
controller.i:575: Error: Unable to find 'webots/Pen.hpp'
controller.i:581: Error: Unable to find 'webots/PositionSensor.hpp'
controller.i:606: Error: Unable to find 'webots/radar_target.h'
controller.i:625: Error: Unable to find 'webots/Radar.hpp'
controller.i:686: Error: Unable to find 'webots/RangeFinder.hpp'
controller.i:698: Error: Unable to find 'webots/Receiver.hpp'
controller.i:706: Error: Unable to find 'webots/Skin.hpp'
controller.i:712: Error: Unable to find 'webots/Speaker.hpp'
controller.i:718: Error: Unable to find 'webots/TouchSensor.hpp'
controller.i:1009: Error: Unable to find 'webots/Robot.hpp'
controller.i:1015: Error: Unable to find 'webots/DifferentialWheels.hpp'
controller.i:1021: Error: Unable to find 'webots/Supervisor.hpp'
make: *** [Makefile:99: controller36.cpp] Error 1

All help is appreciated. Also do I have to recompile to use 3.6.5 instead of 3.7 version of python?

HDR Backgrounds are not exported to X3D

Describe the Bug
HDR Backgrounds are not exported to X3D.

Steps to Reproduce

  1. export the soccer.wbt world.
  2. the X3D file looks like this and no background texture is exported:
...
<Background id='n3' rightUrl='"textures/.1."' leftUrl='"textures/.1."' topUrl='"textures/.1."' bottomUrl='"textures/.1."' frontUrl='"textures/.1."' backUrl='"textures/.1."' ></Background>
...

Screenshots
1

Ambient occlusion is not disabled on low-end computers

Describe the Bug

The function which checks the computer capability does not take into account the disable of the ambient occlusion which is a costly operation on such hardware.

Steps to Reproduce

  1. Start Webots for the first time on a "low-end computer", a virtual machine for example.
  2. The warning saying a "low-end computer" dialog is displayed.
  3. Every costly operation are disabled, except the global ambient occlusion.

Distribution Not Working with Python 2.7

Describe the Bug
The script /copy_msys64_files.py is not compatible with Python 2:

# preparing msys64 folders and files
  File "./copy_msys64_files.py", line 42
    print("# processing " + p, flush=True) 
                                                ^
SyntaxError: invalid syntax

ROS examples do not run on Windows

The following .dll files are missing from the windows installation for 2019a and prevent the ROS examples running on Windows.

libboost_signals-mt.dll
libboost_filesystem-mt.dll

In the mean time while this bug is fixed, can these files be uploaded somewhere so I can run the examples?

Retina displays: rendering speed depends a lot on the view3D dimension

Describe the Bug

On a retina display, the view3D covers a huge surface.
As a consequence, the rendering speed (and so often the overall simulation speed) depends a lot of the view3D dimension.
At some threshold, the GPU performance starts to be very poor, probably the GPU memory starts to be saturated.

Steps to Reproduce

Open a world such as city.wbt, play with the Webots window size, and observe the effect on the speedometer.

System

  • Display: Retina
  • OS: Mojave
  • Graphics Card: Radon PRO 560X

Webots crashes on startup

Describe the Bug

On some hardware, Webots R2019a crashes on startup.

Screenshots

capture

(from ticket #324)

System

It seems to affect mainly Windows users, without guarantee for now.
The bug have been reproduced with the following GPU:

  • AMD Radeon(TM) R7 M440 (0x6900)
  • AMD Radeon 6600M and 6700M Series
  • NVIDIA Corporation - GeForce 840M/PCIe/SSE2 - 3.3.0 NVIDIA 376.54
  • NVIDIA Corporation - GeForce 540M - 3.3.0

Viewpoint rotation around picked point doesn't work on VMware

Describe the Bug
The rotation of the viewpoint around the picked point doesn't work.

Steps to Reproduce

  1. Open any world file, click and drag on a object to rotate the viewpoint.

Expected behavior
It should behave like on other platforms.

System

  • Operating System: Linux Ubuntu 18.04 running in VMware on Windows 10
  • Graphics Card: GeForce GTX 970

Transfer all Textures to GPU at Load

Describe the Bug
Currently all the wren textures are loaded, setup and bind when the world is loaded, but OpenGL actually transfer them to the GPU only the first time they are used. Which can cause slowdowns while the simulation is running (because of culling new objects/textures can enter the scene, see for example https://www.gamedev.net/forums/topic/370069-texture-prefetch-preloading-solved/).

Steps to Reproduce
This is easily visible in big worlds when the viewpoint far field is set to non-zero. Moving the viewpoint initially produces jaggy motions and we can see the GPU memory increasing while we move. Then, once we have 'viewed' all the objects, the motion becomes smooth and GPU memory becomes stable.

Expected behavior
Performing an initial rendering without culling will force the transfer of all the textures to the GPU: this is currently in test here: cb98047

Lua Gd not Working From Distribution

Describe the Bug
Lua gd doesn't seem to work from the distribution.

Steps to Reproduce

  1. From the distribution open the city world

Screenshots

ERROR: 'C:/Program Files/Webots/projects/objects/traffic/protos/DirectionPanel.proto': error: Template engine error: luaL_dostring error : C:/Program Files/Webots/resources/lua/liluat/liluat.lua:520: attempt to perform arithmetic on local 'line_number' (a nil value).

System

  • Tested on a Windows 10 distribution (working fine in development environment)

Rare crash when changing RoadLine.type

Steps to Reproduce

  1. Open projects/vehicles/worlds/city.wbt
  2. Select the first "CurvedRoadSegment.lines[0]" RoadLine node.
  3. Play with the RoadLine.type (reset to default, change value, etc.)
  4. Webots crashes sometimes with the stack above.

Stack

#0	0x00000001002586cc in WbTreeItem::parent() const at /Users/fabien/repos/webots/src/webots/scene_tree/WbTreeItem.hpp:42
#1	0x000000010025f742 in WbSceneTreeModel::itemToIndex(WbTreeItem const*) const at /Users/fabien/repos/webots/src/webots/scene_tree/WbSceneTreeModel.cpp:210
#2	0x0000000100255954 in WbSceneTree::applyNodeRegeneration(WbNode*) at /Users/fabien/repos/webots/src/webots/scene_tree/WbSceneTree.cpp:1290
#3	0x000000010025cbf9 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<WbNode*>, void, void (WbSceneTree::*)(WbNode*)>::call(void (WbSceneTree::*)(WbNode*), WbSceneTree*, void**) at /Users/fabien/repos/webots/src/webots/../../Contents/MacOS/../Frameworks/QtCore.framework/Headers/qobjectdefs_impl.h:134
#4	0x000000010025cb63 in void QtPrivate::FunctionPointer<void (WbSceneTree::*)(WbNode*)>::call<QtPrivate::List<WbNode*>, void>(void (WbSceneTree::*)(WbNode*), WbSceneTree*, void**) at /Users/fabien/repos/webots/src/webots/../../Contents/MacOS/../Frameworks/QtCore.framework/Headers/qobjectdefs_impl.h:167
#5	0x000000010025ca96 in QtPrivate::QSlotObject<void (WbSceneTree::*)(WbNode*), QtPrivate::List<WbNode*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) at /Users/fabien/repos/webots/src/webots/../../Contents/MacOS/../Frameworks/QtCore.framework/Headers/qobjectdefs_impl.h:396
#6	0x0000000101cdc84b in QMetaObject::activate(QObject*, int, int, void**) ()
#7	0x0000000100445a3d in WbTemplateManager::postNodeRegeneration(WbNode*) at /Users/fabien/repos/webots/src/webots/build/debug/WbTemplateManager.moc.cpp:195
#8	0x00000001002eb0dd in WbTemplateManager::regenerateNode(WbNode*) at /Users/fabien/repos/webots/src/webots/nodes/utils/WbTemplateManager.cpp:415
#9	0x00000001002ec837 in WbTemplateManager::regenerateNodeFromField(WbNode*, WbField*, bool) at /Users/fabien/repos/webots/src/webots/nodes/utils/WbTemplateManager.cpp:205
#10	0x00000001002ec5b3 in WbTemplateManager::regenerateNodeFromParameterChange(WbField*) at /Users/fabien/repos/webots/src/webots/nodes/utils/WbTemplateManager.cpp:185

Python library crash when calling getRangeImage() too early

Describe the Bug

Ditto
Reported there: https://www.cyberbotics.com/forum?message=8730

Steps to Reproduce

  1. Open 'pioneer3at.wbt' in Webots
  2. Change the Sick for a Kinect
  3. Attach the following new Python controller:
from controller import Robot

robot = Robot()
timestep = int(robot.getBasicTimeStep())

kinectrange = robot.getRangeFinder("kinect range")
kinectrange.enable(timestep)
# robot.step(timestep)
image = kinectrange.getRangeImage()

while robot.step(timestep) != -1:
    pass
  1. Restart the world and run the simulation
  2. The controller crashes with this stack:
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   _controller.so                	0x000000010befd6ed _wrap_RangeFinder_getRangeImage(_object*, _object*) + 317
1   org.python.python             	0x00007fff4cf95bf0 PyEval_EvalFrameEx + 1102
2   org.python.python             	0x00007fff4cf9b73e 0x7fff4cf16000 + 546622
3   org.python.python             	0x00007fff4cf9945a PyEval_EvalFrameEx + 15544
4   org.python.python             	0x00007fff4cf95588 PyEval_EvalCodeEx + 1540
5   org.python.python             	0x00007fff4cf94f7e PyEval_EvalCode + 32
6   org.python.python             	0x00007fff4cfb4069 0x7fff4cf16000 + 647273
7   org.python.python             	0x00007fff4cfb4110 PyRun_FileExFlags + 130
8   org.python.python             	0x00007fff4cfb3c8f PyRun_SimpleFileExFlags + 719
9   org.python.python             	0x00007fff4cfc56fc Py_Main + 3176
10  libdyld.dylib                 	0x00007fff6fd6fed9 start + 1

PbrAppearance VRML Export Issue

Describe the Bug
The texture keyword is missing when exporting a PbrAppearance node to VRML.

Steps to Reproduce

  1. Export and import to VRML the 'pioneer3dx' world.

Expected behavior

          appearance Appearance {
            material Material {
              diffuseColor 1 1 1
              specularColor 1 1 1
              shininess 1
            }
            texture ImageTexture {
              url [
                "textures/chequered_parquetry_base_color.png"
              ]
            }
            
          }

Screenshots

          appearance Appearance {
            material Material {
              diffuseColor 1 1 1
              specularColor 1 1 1
              shininess 1
            }
            ImageTexture {
              url [
                "textures/chequered_parquetry_base_color.png"
              ]
            }
            
          }

Matlab Controllers Broken

Describe the Bug
Matlab controllers are broken (this might be recent as it was working ~1month ago).

Steps to Reproduce

  1. Open the matlab sample and run it.

Screenshots

MATLAB crash file:C:\Users\David\AppData\Local\Temp\matlab_crash_dump.8892-1:


--------------------------------------------------------------------------------
             Assertion detected at mer. déc. 12 04:09:53 2018 +0100
--------------------------------------------------------------------------------

Configuration:
  Crash Decoding           : Disabled - No sandbox or build area path
  Crash Mode               : continue (default)
  Default Encoding         : windows-1252
  Deployed                 : false
  Graphics Driver          : Unknown hardware 
  Graphics card 1          : NVIDIA ( 0x10de ) NVIDIA GeForce GTX 970 Version 25.21.14.1694 (2018-11-12)
  Java Crash Report        : C:\Users\David\AppData\Local\Temp\hs_error_pid8892.log
  Java Version             : Java 1.8.0_144-b01 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode
  MATLAB Architecture      : win64
  MATLAB Entitlement ID    : 1376434
  MATLAB Root              : C:\Program Files\MATLAB\R2018a
  MATLAB Version           : 9.4.0.813654 (R2018a)
  OpenGL                   : hardware
  Operating System         : Microsoft Windows 10 Famille
  Process ID               : 8892
  Processor ID             : x86 Family 6 Model 60 Stepping 3, GenuineIntel
  Session Key              : 6e2697c1-508e-4e34-8cbd-6994f1ad538c
  Window System            : Version 10.0 (Build 17134)

Fault Count: 1


Assertion in void __cdecl `anonymous-namespace'::mwJavaAbort(void) at b:\matlab\src\jmi\jmi\javainit.cpp line 1461

Register State (captured):
  RAX = 00000000fea22ef8  RBX = 0000000000000000
  RCX = 00000000043ebed0  RDX = 0000000000000000
  RSP = 00000000043ebe50  RBP = 0000000021218858
  RSI = 00000000fea22ef8  RDI = 00000000fea22ef8
 
   R8 = 00008d9ae3973cff   R9 = 00007ffd17950000
  R10 = 00000000fe95a298  R11 = 00000000fea12eec
  R12 = 00000000043ec510  R13 = 00000000fea12e28
  R14 = 00000000fea22e78  R15 = 0000000021218858
 
  RIP = 00000000fe81c44a  EFL = 00000206
 
   CS = 0033   FS = 0053   GS = 002b

Stack Trace (captured):
[  0] 0x00000000fe816063                              bin\win64\libmwfl.dll+00155747
[  1] 0x00000000fe814658                              bin\win64\libmwfl.dll+00149080
[  2] 0x00000000fe817f68                              bin\win64\libmwfl.dll+00163688
[  3] 0x00000000fe81780e                              bin\win64\libmwfl.dll+00161806
[  4] 0x00000000fe81bdc8                              bin\win64\libmwfl.dll+00179656
[  5] 0x00000000211abcec                                  bin\win64\jmi.dll+00703724
[  6] 0x0000000059b36d1d C:\Program Files\MATLAB\R2018a\sys\java\jre\win64\jre\bin\server\jvm.dll+02714909
[  7] 0x0000000059b1ef3b C:\Program Files\MATLAB\R2018a\sys\java\jre\win64\jre\bin\server\jvm.dll+02617147
[  8] 0x0000000059b37a46 C:\Program Files\MATLAB\R2018a\sys\java\jre\win64\jre\bin\server\jvm.dll+02718278
[  9] 0x0000000059b3c33c C:\Program Files\MATLAB\R2018a\sys\java\jre\win64\jre\bin\server\jvm.dll+02736956
[ 10] 0x0000000059bd2938 C:\Program Files\MATLAB\R2018a\sys\java\jre\win64\jre\bin\server\jvm.dll+03352888
[ 11] 0x00007ffd1ed4ed3d                      C:\WINDOWS\SYSTEM32\ntdll.dll+00650557
[ 12] 0x00007ffd1ecb6c86                      C:\WINDOWS\SYSTEM32\ntdll.dll+00027782
[ 13] 0x00007ffd1ed4dc6e                      C:\WINDOWS\SYSTEM32\ntdll.dll+00646254
[ 14] 0x000000018005e8fe C:\Program Files\Webots\msys64\usr\bin\msys-2.0.dll+00125182
[ 15] 0x000000018005fea8 C:\Program Files\Webots\msys64\usr\bin\msys-2.0.dll+00130728
[ 16] 0x00007ffd1ed156b8                      C:\WINDOWS\SYSTEM32\ntdll.dll+00415416
[ 17] 0x00007ffd1ecb722c                      C:\WINDOWS\SYSTEM32\ntdll.dll+00029228
[ 18] 0x00007ffd1ed4dc6e                      C:\WINDOWS\SYSTEM32\ntdll.dll+00646254
[ 19] 0x000000008044344c                                   <unknown-module>+00000000

System

  • Operating System: Windows 10
  • Matlab Version: R2018a

Controller Print not Displayed on Windows

Describe the Bug
Some prints in the controller are sometimes not displayed on Windows.

Steps to Reproduce
The following controller doesn't print anything:

#include <stdio.h>
#include <webots/robot.h>

#define TIME_STEP 16

int main(int argc, char **argv) {
   wb_robot_init();
   while (wb_robot_step(TIME_STEP) != -1) {
     printf("hello world!\n");
   }    
   wb_robot_cleanup();    
   return 0; 
 }

Adding a fflush(stdout); after the print solves the issue.

System

  • Operating System: Windows 10. This is not reproducible on Linux.

Webots crash when importing a Mirror PROTO

Describe the Bug

In the icon studio, when importing the Mirror PROTO from the supervisor to create the icon, Webots crashes.

Steps to Reproduce

(To check after the #14 merge)

  1. For conveniency, edit scripts/icon_studio/controllers/icon_creator/objects.json to keep only the Mirror case.
  2. Open scripts/icon_studio/controllers/icon_creator/objects.json
  3. Run it
  4. Webots crash with the stack bellow.

System

  • Operating System: macOS Mojave
  • Graphics Card: AMD Radeon PRO 560X

Additional context

Stack:

Thread 0 Crashed:: CrBrowserMain  Dispatch queue: com.apple.main-thread
0   com.cyberbotics.webots        	0x00000001072b1362 WbWrenCamera::getWrenTexture() const + 18 (WbWrenCamera.cpp:85)
1   com.cyberbotics.webots        	0x0000000106fa7b77 WbCamera::getWrenTexture() + 71 (WbCamera.cpp:303)
2   com.cyberbotics.webots        	0x0000000107014472 WbDisplay::attachCamera(unsigned short) + 210 (WbDisplay.cpp:1093)
3   com.cyberbotics.webots        	0x0000000107013837 WbDisplay::handleMessage(QDataStream&) + 183 (WbDisplay.cpp:244)
4   com.cyberbotics.webots        	0x000000010718f5be WbRobot::dispatchMessage(QDataStream&) + 286 (WbRobot.cpp:747)
5   com.cyberbotics.webots        	0x0000000106fe3ffb WbController::readRequest() + 779 (WbController.cpp:1020)
6   com.cyberbotics.webots        	0x0000000107368e86 WbController::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) + 134 (WbController.moc.cpp:142)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.