All Projects → morsh → unity-drones-multiplayer

morsh / unity-drones-multiplayer

Licence: MIT license
Enable multiple players to connect to the same enrironment (UNET), fly a drone, and watch others fly their drones

Programming Languages

C#
18002 projects
ShaderLab
938 projects

Projects that are alternatives of or similar to unity-drones-multiplayer

Imageprocessing
MicaSense RedEdge and Altum image processing tutorials
Stars: ✭ 139 (+363.33%)
Mutual labels:  drones
DARTS
Code for DARTS: DenseUnet-based Automatic Rapid Tool for brain Segmentation
Stars: ✭ 61 (+103.33%)
Mutual labels:  unet
unet
this is a simple demo for image segmentation.----unet网络进行语义分割的demo,用的数据集是KITTI
Stars: ✭ 89 (+196.67%)
Mutual labels:  unet
Airsim
Open source simulator for autonomous vehicles built on Unreal Engine / Unity, from Microsoft AI & Research
Stars: ✭ 12,528 (+41660%)
Mutual labels:  drones
Starrypilot
A lightweight autopilot software for Pixhawk
Stars: ✭ 243 (+710%)
Mutual labels:  drones
image-segmentation
Mask R-CNN, FPN, LinkNet, PSPNet and UNet with multiple backbone architectures support readily available
Stars: ✭ 62 (+106.67%)
Mutual labels:  unet
U360gts
The Universal 360º Continous Rotation Tracker System for Drones (UAVs, RPAs and FPV).
Stars: ✭ 113 (+276.67%)
Mutual labels:  drones
DigiView-SBC
DigiView for Raspberry Pi
Stars: ✭ 63 (+110%)
Mutual labels:  drones
Inav Configurator
Stars: ✭ 243 (+710%)
Mutual labels:  drones
lung-segmentation
Lung segmentation for chest X-Ray images
Stars: ✭ 74 (+146.67%)
Mutual labels:  unet
P
The P programming language.
Stars: ✭ 2,309 (+7596.67%)
Mutual labels:  drones
Airsim Neurips2019 Drone Racing
Drone Racing @ NeurIPS 2019, built on Microsoft AirSim
Stars: ✭ 220 (+633.33%)
Mutual labels:  drones
ResUNetPlusPlus-with-CRF-and-TTA
ResUNet++, CRF, and TTA for segmentation of medical images (IEEE JBIHI)
Stars: ✭ 98 (+226.67%)
Mutual labels:  unet
Bluesky
The open source air traffic simulator
Stars: ✭ 146 (+386.67%)
Mutual labels:  drones
3D-UNet-PyTorch-Implementation
The implementation of 3D-UNet using PyTorch
Stars: ✭ 78 (+160%)
Mutual labels:  unet
Sapog
Sapog - advanced multiplatform ESC firmware
Stars: ✭ 139 (+363.33%)
Mutual labels:  drones
karting
A multiplayer racing example project in Unity using the SocketWeaver SDK
Stars: ✭ 39 (+30%)
Mutual labels:  unet
Unet2d
Medical Image Ceil Segment
Stars: ✭ 53 (+76.67%)
Mutual labels:  unet
EfficientUNetPlusPlus
Decoder architecture based on the UNet++. Combining residual bottlenecks with depthwise convolutions and attention mechanisms, it outperforms the UNet++ in a coronary artery segmentation task, while being significantly more computationally efficient.
Stars: ✭ 37 (+23.33%)
Mutual labels:  unet
multiclass-semantic-segmentation
Experiments with UNET/FPN models and cityscapes/kitti datasets [Pytorch]
Stars: ✭ 96 (+220%)
Mutual labels:  unet

Unity Drones Multiplayer

A sample project to use UNET protocol between client and server to allow multiplayer support for Unity by enabling multiple users to connect and control a drone while watching other players interact with their own drones.

Preview

Execution on Windows

  • Open main folder in Unity, open File > Build Settings.
  • Build Scenes/desert into ./Build/Desert/start.exe.
  • Build Scenes/server into ./Build/Server/start.exe.
  • Run Server/start.exe
  • Run Desert/start.exe multiple times
  • Connect with a different username on each desert window
  • Interact in one window to watch the drone fly in the others as well

You can also execute the server by opening Scenes/server in unity and pressing Play.

Building and Running with Docker

  • Open main folder in Unity, open File > Build Settings.
  • Build Scenes/desert into ./Build/Desert/start.exe.
  • Run Desert/start.exe multiple times

To build the server

  • Open main folder in Unity, open File > Build Settings.
  • Change build settings to Linux + x86 + x86_x64 (Universal) + Headless Mode: true.
  • Open Player Settings and set Scripting Define Symbols to CROSS_PLATFORM_INPUT;DEDICATED_SERVER_MODE.
  • Build Scenes/server into ./Build/Server/Linux/linuxserver.x86.
  • Build and Run with docker (from root folder):
docker build -t unitydronesserver:latest .
docker run -p 5701:5701/udp unitydronesserver:latest
  • Check that the docker container is running:
docker ps -a
  • Start multiple clients and connect

Run on Kubernetes on Azure

You can run Building and Running with Docker to create a new image, then run the following commands: (Replace <USER_NAME> with your docker hub user name)

docker tag unitydronesserver:latest <USER_NAME>/unitydronesserver:latest
docker push <USER_NAME>/unitydronesserver:latest

Follow instructions to setup a new kubernetes cluster on Azure under: k8s/setup.sh.

Deploy a new application using:

kubectl create -f k8s/app.yaml

If you want to use your own image, change k8s/app.yaml and replace morshemesh with your own user name.

  • Wait until the Service is done deploying on kubernetes and has a Public IP
  • Use that Public IP and set server_ip under Assets/Scripts/Client.cs.
  • Build/Run the client for Windows.

Resources

License

MIT License

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].