Hi everyone, I'm currently building a robot using a Rasperry Pi, 3D printing, several motors and a bunch of electronics components to get everything to work. The main controls and decision making of the robot are being taken care of by the Raspberry Pi computer inside the robot, but I'd like to connect the robot to a desktop computer/laptop via WiFi for additional CPU/GPU computation power. It has a live camera feed, and I want it to recognize objects/people and map the environment, something that the robot itself is not powerful enough for to do on its own. Now I am looking for a good solution to connect the robot to a laptop/desktop PC to handle all this data processing, and I was considering using Unity for this project, mainly because It gives access to a powerfull 3D engine that I can use to render the robots position, orientation, sensor data, pathfinding data and environment. I was hoping that you guys could give me some advice on whether Unity would be the right choice for an application like this, or if I'd be better of finding another way. An alternative option could for example be making a completely custom made C++ application to get all this to work. Some features that I'd like to add are: The robot will stream sensor and position/rotation data via low latency WiFi about 30 to 60 times per second The robot will send a live video stream for analysis in OpenCV (for object/face recogintion/detection and additional analysis in realtime) The software will use the camera data from the robot to map the environment around the robot using OpenCV, and display the robot's position in it The robot should also be able to do pathfinding based on the mapped environment, if possible also visualized in 3D The software should be able to display the robot's position, orientation and state in 3D, which should exactly match the robot's state I'd really appreciate hearing what you guys think, thanks in advance for your suggestions!