Git Product home page Git Product logo

harplab / dreyevr Goto Github PK

View Code? Open in Web Editor NEW
134.0 11.0 35.0 180.03 MB

VR driving πŸš™ + eye tracking πŸ‘€ simulator based on CARLA for driving interaction research

Home Page: https://arxiv.org/abs/2201.01931

License: MIT License

C++ 61.46% C# 0.39% Python 25.15% Shell 6.97% Perl 1.71% Makefile 0.06% C 0.49% Batchfile 3.78%
carla-simulator carla vr virtual-reality eye-tracking unreal-engine-4 simulator driving human human-in-the-loop

dreyevr's Introduction

DReyeVR

Welcome to DReyeVR, a VR driving simulator for behavioural and interactions research.

Main Figure

Submission Video Demonstration (YouTube)

Build Status

This project extends the Carla simulator to add virtual reality integration, a first-person maneuverable ego-vehicle, eye tracking support, and several immersion enhancements.

If you have questions, hopefully our F.A.Q. wiki page and issues page can answer some of them.

IMPORTANT: Currently DReyeVR only supports Carla versions: 0.9.13 with Unreal Engine 4.26

Highlights

Ego Vehicle

Fully drivable virtual reality (VR) ego-vehicle with SteamVR integration (see EgoVehicle.h)

  • SteamVR HMD head tracking (orientation & position)
    • We have tested with the following devices:
      Device VR Supported Eye tracking OS
      HTC Vive Pro Eye βœ… βœ… Windows, Linux
      Quest 2 βœ… ❌ Windows
    • While we haven't tested other headsets, they should still work for basic VR usage (not eye tracking) if supported by SteamVR.
    • Eye tracking is currently ONLY supported on the HTC Vive Pro Eye since we use SRanipal for the eye-tracker SDK. We are happy to support more devices through contributions for adding other SDKs.
  • Vehicle controls:
    • Generic keyboard WASD + mouse
    • Support for Logitech Steering wheel with this open source LogitechWheelPlugin
      • Includes force-feedback with the steering wheel.
      • We used a Logitech G923 Racing Wheel & Pedals
        • Full list of supported devices can be found here though we can't guarantee out-of-box functionality without testing.
  • Realistic (and parameterizable) rear & side view mirrors
    • WARNING: very performance intensive
  • Vehicle dashboard:
    • Speedometer (in miles-per-hour by default)
    • Gear indicator
    • Turn signals
  • Dynamic steering wheel
    • Adjustable parameters, responsive to steering input
    • See our documentation on this here
  • "Ego-centric" audio
    • Responsive engine revving (throttle-based)
    • Turn signal clicks
    • Gear switching
    • Collisions
  • Fully compatible with the existing Carla PythonAPI and ScenarioRunner
    • Minor modifications were made. See Usage.md documentation.
  • Fully compatible with the Carla Recorder and Replayer
    • Including HMD pose/orientation & sensor reenactment
  • Ability to handoff/takeover control to/from Carla's AI wheeled vehicle controller
  • Carla-based semantic segmentation camera (see Shaders/README.md)

Ego Sensor

Carla-compatible ego-vehicle sensor (see EgoSensor.h) is an "invisible sensor" that tracks the following:

  • Real-time Eye tracking with the HTC Vive Pro Eye VR headset
    • Eye tracker data includes:
      • Timing information (based off headset, world, and eye-tracker)
      • 3D Eye gaze ray (left, right, & combined)
      • 2D Pupil position (left & right)
      • Pupil diameter (left & right)
      • Eye Openness (left & right)
      • Focus point in the world & hit actor information
      • See DReyeVRData.h:EyeTracker for the complete list
    • Eye reticle visualization in real time
  • Real-time user inputs (throttle, steering, brake, turn signals, etc.)
  • Image (screenshot) frame capture based on the camera
    • Typically used in Replay rather than real-time because highly performance intensive.
  • Fully compatible with the LibCarla data serialization for streaming to a PythonAPI client (see LibCarla/Sensor)
    • We have also tested and verified support for (rospy) ROS integration our sensor data streams

Other additions:

  • Custom DReyeVR config file for one-time runtime params. See DReyeVRConfig.ini
    • Especially useful to change params without recompiling everything.
    • Uses standard c++ io management to read the file with minimal performance impact. See DReyeVRUtils.h.
  • World ambient audio
  • Non-ego-centric audio (Engine revving from non-ego vehicles)
  • Synchronized Replay with per-frame frame capture for post-hoc analysis (See Docs/Usage.md)
  • Recorder/replayer media functions
    • Added in-game keyboard commands Play/Pause/Forward/Backward/etc.
  • Static in-environment directional signs for natural navigation (See Docs/Signs.md)
  • Adding weather to the Carla recorder/replayer/query (See this Carla PR)
  • Custom dynamic 3D actors with full recording support (eg. HUD indicators for direction, AR bounding boxes, visual targets, etc.). See CustomActor.md for more.
  • (DEBUG ONLY) Foveated rendering for improved performance with gaze-aware (or fixed) variable rate shading

Install/Build

See Docs/Install.md to:

  • Install and build DReyeVR on top of a working Carla repository.
  • Download plugins for DReyeVR required for fancy features such as:
    • Eye tracking (SRanipal)
    • Steering wheel/pedals (Logitech)
  • Set up a conda environment for DReyeVR PythonAPI

OS compatibility

OS VR Eye tracking Audio Keyboard+Mouse Racing wheel Foveated Rendering (Editor)
Windows βœ… βœ… βœ… βœ… βœ… βœ…
Linux βœ… ❌ βœ… βœ… ❌ ❌
MacOS ❌ ❌ βœ… βœ… ❌ ❌
  • While Windows (10) is recommended for optimized VR support, all our work translates to Linux systems except for the eye tracking and hardware integration which have Windows-only dependencies.
    • Unfortunately the eye-tracking firmware is proprietary & does not work on Linux
      • This is (currently) only supported on Windows because of some proprietary dependencies between HTC SRanipal SDK and Tobii's SDK. Those interested in the Linux discussion for HTC's Vive Pro Eye Tracking can follow the subject here (Vive), here (Vive), and here (Tobii).
    • Additionally, the LogitechWheelPlugin we use only has Windows support currently. Though it should be possible to use the G923 on Linux as per the Arch Wiki.
  • Also, although MacOS is not officially supported by CARLA, we have development happening on an Apple Silicon machine and have active forks of CARLA + UE4.26 with MacOS 12+ support. Note that this is primarily for development, as it is the most limited system by far.

Documentation & Guides

  • See F.A.Q. wiki for our Frequently Asked Questions wiki page.
  • See Install.md to install and build DReyeVR
  • See Usage.md to learn how to use our provided DReyeVR features
  • See Development.md to get started with DReyeVR development and add new features
  • See Docs/Tutorials/ to view several DReyeVR tutorials such as customizing the EgoVehicle, adding custom signs/props and more.

Citation

If you use our work, please cite the corresponding paper:

@inproceedings{silvera2022dreyevr,
  title={DReyeVR: Democratizing Virtual Reality Driving Simulation for Behavioural \& Interaction Research},
  author={Silvera, Gustavo and Biswas, Abhijat and Admoni, Henny},
  booktitle={Proceedings of the 2022 ACM/IEEE International Conference on Human-Robot Interaction},
  pages={639--643},
  year={2022}
}

Acknowledgements

  • This project builds upon and extends the CARLA simulator
  • This repo includes some code from CARLA: Computer Vision Center (CVC) at the Universitat Autonoma de Barcelona (UAB) & Intel Corporation.
  • This repo includes some code from Hewlett-Packard Development Company, LP. See nvidia.ph. This is a modified diagnostic tool used during development.

Licenses

  • Custom DReyeVR code is distributed under the MIT License.
  • Unreal Engine 4 follows its own license terms.
  • Code used from other sources that is prefixed with a Copyright header belongs to those individuals/organizations.
  • CARLA specific licenses (and dependencies) are described on their GitHub

dreyevr's People

Contributors

adelheddadji avatar ajdroid avatar gustavosilvera avatar shh1v avatar shreeyakhurana avatar sunchongren 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

dreyevr's Issues

Modify PythonAPI to manipulate boolean variables inside EgoVehicle.h or EgoVehicle.cpp

Hello, It's me, again.
I initialized two variables in EgoVehicle.h, and the behavior of the Heads-Up display I implemented (see this) depends on the value of these two boolean variables. How can I modify PythonAPI such that it would allow me to manipulate these boolean variables using python scripts? I know this is a very high-level description of my problem, but I would really appreciate it if you could guide me to the right resources, or just give me a basic idea of how I can approach the implementation.

The vehicle moves left & right instead of straight even when the steering wheel is at a fixed position

Hi team,

CARLA version: 0.9.13

Platform/OS: Windows 10 (Version 21H2)

Problem you have experienced: I have installed the DReyeVR without any error but when I try to drive, the vehicle doesn't go forward in a straight line even when I hold steering wheel in a fixed direction. Also, I don't see steering wheel move in the virtual environment.

Steering Wheels & Pedals: I have Logitech 920 which is installed and works fine

Steps to reproduce:

I followed exact same DReyeVR installation command summary:

NOTE: On windows, this can almost all be done in WSL, except the make commands which need
to be done in the "Windows x64 Native Tools Command Prompt for VS 2019"
mkdir CarlaDReyeVR && cd CarlaDReyeVR # doing everything in this "CarlaDReyeVR" directory (Executed this command)

#####################################################
######### install Carla's UnrealEngine fork ######### (I already had Unreal Engine 4.26 installed)
#####################################################
Linux: https://carla.readthedocs.io/en/0.9.13/build_linux/#unreal-engine
Windows: https://carla.readthedocs.io/en/0.9.13/build_windows/#unreal-engine

#####################################################
################### install Carla ################### (Executed this command)
#####################################################
Linux: https://carla.readthedocs.io/en/0.9.13/build_linux/
Windows: https://carla.readthedocs.io/en/0.9.13/build_windows/
git clone https://github.com/carla-simulator/carla -b 0.9.13
cd carla
./Update.sh
make PythonAPI && make launch (This was executed in X64 command prompt)

#####################################################
############## install DReyeVR plugins ############## (Executed this command)
#####################################################
(optional) install SRanipal (https://developer.vive.com/resources/vive-sense/eye-and-facial-tracking-sdk/download/latest/)
mv /PATH/TO/SRANIPALPLUGIN/SDK/03_Unreal/Plugins/SRanipal Unreal/CarlaUE4/Plugins/ # install to carla (left out the SRanipal)

(optional) install LogitechWheelPlugin
git clone https://github.com/HARPLab/LogitechWheelPlugin
mv LogitechWheelPlugin/LogitechWheelPlugin Unreal/CarlaUE4/Plugins/ # install to carla

cd .. # back to main directory

#####################################################
############## install scenario_runner ############## (Executed this command)
#####################################################
(optional) while you don't NEED scenario runner, it is certainly useful from a research pov
git clone https://github.com/carla-simulator/scenario_runner -b v0.9.13

#####################################################
################## install DReyeVR ################## (Executed this command)
#####################################################
git clone https://github.com/HARPLab/DReyeVR
cd DReyeVR
make all CARLA=../carla SR=../scenario_runner
or equivalently
make carla CARLA=../carla
make sr SR=../scenario_runner
make patch-sranipal CARLA=../carla
cd ..

#####################################################
################## build everything ################# (Executed this command)
#####################################################
cd carla
make launch # launch in editor (All the make commands were again executed in X64 command prompt)
make package # create an optimized package
make check # run Carla unit tests

To check if I have installed the latest carla I ran the git command and the below is the screenshot for the same:

image

To check if I have installed the DReyeVR from main I ran the git command and the below is the screenshot for the same:

image

The pedals works intermittently when I launch the package or even from the Unreal editor in VR preview mode. Also, attaching the log file for your reference.
CarlaUE4.log

Any help is appreciated. Thank you in advance.

"make install CARLA=../carla SR=../scenario_runner" producing errors

Hey! I am just installing the DReyeVR simulator and following the instructions stated in Install.MD
These are the commands I have executed:

mkdir CarlaDReyeVR && cd CarlaDReyeVR # doing everything in this "CarlaDReyeVR" directory
git clone https://github.com/carla-simulator/carla -b 0.9.13
cd carla
./Update.sh
mingw32-make PythonAPI && mingw32-make launch
mv /PATH/TO/SRANIPALPLUGIN/SDK/03_Unreal/Plugins/SRanipal Unreal/CarlaUE4/Plugins/ # install to carla

git clone https://github.com/HARPLab/LogitechWheelPlugin
mv LogitechWheelPlugin/LogitechWheelPlugin Unreal/CarlaUE4/Plugins/ # install to carla

cd .. 

git clone https://github.com/carla-simulator/scenario_runner -b v0.9.13

git clone https://github.com/HARPLab/DReyeVR
cd DReyeVR

When running mingw32-make install CARLA=../carla SR=../scenario_runner, I get the following output:

Unknown filetype: E:\work\CarlaDReyeVR\DReyeVR\Content\DReyeVR_Signs\* Traceback (most recent call last): File "Scripts/install.py", line 59, in <module> check_files=["CHANGELOG.md"], File "Scripts/install.py", line 46, in install_over advanced_cp(DReyeVR_path, advanced_join([ROOT, CARLA_path]), verbose=True) File "E:\work\CarlaDReyeVR\DReyeVR\Scripts\utils.py", line 248, in advanced_cp raise e File "E:\work\CarlaDReyeVR\DReyeVR\Scripts\utils.py", line 245, in advanced_cp advanced_cp(f, dest, verbose=verbose) File "E:\work\CarlaDReyeVR\DReyeVR\Scripts\utils.py", line 234, in advanced_cp raise Exception("Cannot copy a directory to a file") Exception: Cannot copy a directory to a file Makefile:9: recipe for target 'install' failed mingw32-make: *** [install] Error 1
The full output can be found as an attachment. I would really appreciate it if you could help me out.
error.txt

Error reading DReyeVRConfig.ini file

When I am packaging DReyeVR, it throws an error. It shows that the Cook Failed. I am not sure why this is happening, can you please help me out?
This is the part of the error in the log:

  LogInit: Display: LogTemp: Error: No variable matching Camera/FieldOfView found
  LogInit: Display: LogTemp: Error: No variable matching Camera/ScreenPercentage found
  LogInit: Display: LogTemp: Error: No variable matching Camera/VignetteIntensity found
  LogInit: Display: LogTemp: Error: No variable matching Camera/BloomIntensity found
  LogInit: Display: LogTemp: Error: No variable matching Camera/SceneFringeIntensity found
  LogInit: Display: LogTemp: Error: No variable matching Camera/LensFlareIntensity found
  LogInit: Display: LogTemp: Error: No variable matching Camera/GrainIntensity found
  LogInit: Display: LogTemp: Error: No variable matching
 Camera/MotionBlurIntensity found
  LogInit: Display: LogTemp: Error: No variable matching EgoVehicle/CameraInit found

I am not sure why this error is showing. So, I don't know what other relevant information you need to resolve this problem. Please let me know if you need any additional information. I have uploaded the full Unreal Engine log file. Thank you!
Log.txt

Carla build error with StopTelemetry, SetWheelRotYaw, GetWheelRotAngle, etc.

Hi,
I follow this link step by step (part: "DReyeVR installation command summary") to install DReyeVR :
https://github.com/HARPLab/DReyeVR/blob/main/Docs/Install.md

I done all step correctly up to install carla. In order to install "carla" when I run "make launch" in "x64 Native Tools Command Prompt for VS 2019" I get the following error:

Building 8 actions with 8 processes...
  [1/8] Module.Carla.gen.5_of_7.cpp
  D:\VR\carla\Unreal\CarlaUE4\Plugins\Carla\Source\Carla/Game/TaggedComponent.h(83): error C2504: 'FHierarchicalStaticMeshSceneProxy': base class undefined
  D:\VR\carla\Unreal\CarlaUE4\Plugins\Carla\Source\Carla/Game/TaggedComponent.h(87): error C3668: 'FTaggedHierarchicalStaticMeshSceneProxy::GetViewRelevance': method with override specifier 'override' did not override any base class methods
  [2/8] Module.Carla.3_of_3.cpp
  D:/VR/carla/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/CarlaWheeledVehicle.cpp(540): error C2039: 'StopTelemetry': is not a member of 'UWheeledVehicleMovementComponent'
  D:\VR\UE\UnrealEngine-4.27\Engine\Plugins\Runtime\PhysXVehicles\Source\PhysXVehicles\Public\PhysXVehicleManager.h(11): note: see declaration of 'UWheeledVehicleMovementComponent'
  D:/VR/carla/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/CarlaWheeledVehicle.cpp(574): error C2039: 'SetWheelRotYaw': is not a member of 'UVehicleAnimInstance'
  D:\VR\UE\UnrealEngine-4.27\Engine\Plugins\Runtime\PhysXVehicles\Source\PhysXVehicles\Public\VehicleAnimInstance.h(61): note: see declaration of 'UVehicleAnimInstance'
  D:/VR/carla/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/CarlaWheeledVehicle.cpp(596): error C2039: 'GetWheelRotAngle': is not a member of 'UVehicleAnimInstance'
  D:\VR\UE\UnrealEngine-4.27\Engine\Plugins\Runtime\PhysXVehicles\Source\PhysXVehicles\Public\VehicleAnimInstance.h(61): note: see declaration of 'UVehicleAnimInstance'
  D:/VR/carla/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/CarlaWheeledVehicle.cpp(614): warning C4458: declaration of 'RootComponent' hides class member
  D:\VR\UE\UnrealEngine-4.27\Engine\Source\Runtime\Engine\Classes\GameFramework/Actor.h(672): note: see declaration of 'AActor::RootComponent'
 ...

carla: 0.913
UE: 4.27
windows: 10
vs: 2019

I would be appreciate if you help me to solve this error

error while running "make package" command

hi, dear Gustavo
I follow the steps in Docs/Install.md and install all of them correctly up to "build everything".
carla: 0.913
UE: 4.27
windows: 10
vs: 2019
I have execute the following command which encounter error:

make package    # create an optimized package

********** BUILD COMMAND COMPLETED **********
********** COOK COMMAND STARTED **********
Running UE4Editor Cook for project D:\VR\carla\Unreal\CarlaUE4\CarlaUE4.uproject
Commandlet log file is D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Programs\AutomationTool\Saved\Cook-2022.09.12-07.28.18.txt
Running: D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Binaries\Win64\UE4Editor-Cmd.exe D:\VR\carla\Unreal\CarlaUE4\CarlaUE4.uproject -run=Cook -TargetPlatform=WindowsNoEditor -fileopenlog -unversioned -abslog=D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Programs\AutomationTool\Saved\Cook-2022.09.12-07.28.18.txt -stdout -CrashForUAT -unattended -NoLogTimes
LogInit: Display: Running engine for game: CarlaUE4
LogWindows: Error: begin: stack for UAT
LogWindows: Error: === Critical error: ===
LogWindows: Error:
LogWindows: Error: Fatal error: [File:D:/VR/UnrealEngine-carla/UnrealEngine-carla/Engine/Source/Runtime/Core/Private/Internationalization/ICUInternationalization.cpp] [Line: 153]
LogWindows: Error: ICU data directory was not discovered:
LogWindows: Error: ../../../../../carla/Unreal/CarlaUE4/Content/Internationalization
LogWindows: Error: ../../../Engine/Content/Internationalization
LogWindows: Error:
LogWindows: Error:
LogWindows: Error: [Callstack] 0x00007ffcde174fd9 KERNELBASE.dll!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ffc99e9e966 UE4Editor-Core.dll!ReportAssert() [D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Source\Runtime\Core\Private\Windows\WindowsPlatformCrashContext.cpp:1616]
LogWindows: Error: [Callstack] 0x00007ffc99ea1ee9 UE4Editor-Core.dll!FWindowsErrorOutputDevice::Serialize() [D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Source\Runtime\Core\Private\Windows\WindowsErrorOutputDevice.cpp:79]
LogWindows: Error: [Callstack] 0x00007ffc99bc250d UE4Editor-Core.dll!FOutputDevice::LogfImpl() [D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Source\Runtime\Core\Private\Misc\OutputDevice.cpp:61]
LogWindows: Error: [Callstack] 0x00007ffc99a8114a UE4Editor-Core.dll!FICUInternationalization::Initialize() [D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Source\Runtime\Core\Private\Internationalization\ICUInternationalization.cpp:153]
LogWindows: Error: [Callstack] 0x00007ffc99a714ba UE4Editor-Core.dll!FInternationalization::Get() [D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Source\Runtime\Core\Private\Internationalization\Internationalization.cpp:24]
LogWindows: Error: [Callstack] 0x00007ffc99abcc59 UE4Editor-Core.dll!BeginInitTextLocalization() [D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Source\Runtime\Core\Private\Internationalization\TextLocalizationManager.cpp:335]
LogWindows: Error: [Callstack] 0x00007ff676467332 UE4Editor-Cmd.exe!FEngineLoop::AppInit() [D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:5283]
LogWindows: Error: [Callstack] 0x00007ff67647e77f UE4Editor-Cmd.exe!FEngineLoop::PreInitPreStartupScreen() [D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:2180]
LogWindows: Error: [Callstack] 0x00007ff676471757 UE4Editor-Cmd.exe!GuardedMain() [D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Source\Runtime\Launch\Private\Launch.cpp:127]
LogWindows: Error: [Callstack] 0x00007ff676471aea UE4Editor-Cmd.exe!GuardedMainWrapper() [D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:137]
LogWindows: Error: [Callstack] 0x00007ff676485a9d UE4Editor-Cmd.exe!WinMain() [D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:268]
LogWindows: Error: [Callstack] 0x00007ff676487abe UE4Editor-Cmd.exe!__scrt_common_main_seh() [d:\agent_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
LogWindows: Error: [Callstack] 0x00007ffce00b7034 KERNEL32.DLL!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ffce0482651 ntdll.dll!UnknownFunction []
LogWindows: Error:
LogWindows: Error: end: stack for UAT
Took 135.635193s to run UE4Editor-Cmd.exe, ExitCode=3
ERROR: Cook failed.
(see D:\VR\UnrealEngine-carla\UnrealEngine-carla\Engine\Programs\AutomationTool\Saved\Logs\Log.txt for full exception trace)
AutomationTool exiting with ExitCode=25 (Error_UnknownCookFailure)
BUILD FAILED

-[Package]: [ERROR] There was a problem while packaging Unreal project.
[ERROR] Please read the screen log for more information.
make: *** [package] Error 1

I make "clean carla" and reinstall it for three times but the error still remains. I would be appreciate if you help me to solve this problem.

adding other vehicle and changing Map

Hi
I watch your YouTube video and I see that you added other vehicle and also other Map like Highway.
How can I bring Highway environment and add other vehicle?

General problems with UE4 & VR

After running make launch and loading the editor, when I dropdown menu I could not select V
Screenshot (4)
R
could you help me what I do wrong?

Rendering fog in DReyeVR and using -vulkan

Hello! I am trying to change the weather to foggy weather. However, it turns the sky dark. Many previous discussions (like #3545, #5303) have highlighted that Vulkan should be used instead on OpenGL. However, 0.9.12+ uses Vulkan by default. So, I was confused why the foggy weather was not rendering. On further investigation, there exists a flag -vulkan which could be used while running Carla. Upon using it, the following error occurred. I am not sure if this is a Carla problem. But, since @GustavoSilvera has been very responsive and helpful (which I really appreciate), I am more inclined to ask here.
Does this error indicate that the game is not using Vulkan? What is the issue here?

image

Is building Unreal from source necessary?

First of all, thank you to the authors for being this code available.
Do authors know if building Unreal 4.26 from source necessary? Or, can we use the Unreal 4.26 which is installed by Epic Games launcher?

Make launch failure with 0.9.13

Hello, I seem to be having trouble launcing DReyeVR with Carla 0.9.13. When I install DReyeVR with bash and run make PythonAPI it completes without issue, but I get some errors at running make launch.

Here is some context:

I have started with a fresh build of Carla 0.9.13 with SteamVR enabled, without SRanipal or the Logitech Wheel installed.
(I have set their respective flags as false in the CarlaUE4.Build.cs file)
I have verified that before installing DReyeVR Carla was functioning normally and that make check passed without issues.
I am using Windows x64 with a native python 3.9 installation. Aside from a conda installation that Carla doesn't use I do not have other python installations. The updated PythonAPI after installing DReyeVR has been installed after first removing the vanilla one through pip3.

After installing DReyeVR and making & applying the new PythonAPI, make check passes without issue, but the problem still occurs during make launch.

Giving a cursory look at the error messages it seems there is some problem with code within the YieldSignComponent.
dreyelaunch_log_1.txt

Obtain eye tracking data directly from sensor and not recorded log file during replay

It seems to me that the eye-tracker information from a user using the VR headset during the replay of a recorded scene is ignored. The eye-tracking data from the original log file produced by the start_recording.py script overrides the eye-tracking info from the user in replay mode (with the start_replaying.py script).
Do you already have a procedure to log the eye-tracking data from a user observing a recorded scene during replay, please? If not, do you have any suggestions (like a hack) other than using a scenario runner?

DReyeVR for cycles

Hi,

Thanks for the awesome and interesting work. The video looks promising!
I am currently working with standard Carla to simulate near mis-events involving cyclists (i.e. the ego vehicle is a cycle). We are considering implementing VR capability on Carla for one of our upcoming research. However, I was wondering what sort of challenges are there to adapt DReyeVR for cycles instead of the standard vehicle.
Thanks.

autopilot cars collide with the stuff in a road

Hi Gustavo this is me again :)
when I set autopilot for the vehicles not DReyeVR vehicle and put some staff on the road vehicles collide to this staff. I do not find any comment about preventing collision for autopilot mode. could you guide me what should I do?

make install CARLA=../carla SR=../scenario_runner" errors

Hi
I follow the steps in Docs/Install.md and install all of them correctly up to "Installing DReyeVR". I have execute the following command which encounter error:
make install CARLA=../carla SR=../scenario_runner

  File "Scripts/install.py", line 22
    DOC_STRING: str = "Install DReyeVR atop a working Carla and/or ScenarioRunner directory"
              ^
SyntaxError: invalid syntax
make: *** [install] Error 1

I run this command with different python versions but error still remain:
python2.7,3.6
python3.8,3.9
I would be appreciate if someone help me to solve this error.

Bug on view calibration

For the view calibration error (driver's view not inside the car):
image

I find the view is always higher than the car.
I did some experiments on changing different room setup. I found that when you set your height (VR headset height) to 0 (which means your eye's height level is the floor), the bug is solved. And I also found the actual view height above the normal view point (inside the car) is exactly your height (headset height to floor).

Questions about general understanding of DReyeAR

Hey contributors
I have some confusion about VR version of Carla.

  1. After successfully make launch and make package, a new folder was created in carla/Build. Do we need to do any operation inside this folder or in carla root folder
  2. The carla has server side and client side. When I run a normal version of carla, the server side is like an overview of the whole map. Hoever, for DReyeVR, the server side is the view inside a Tesla (image below). I am confused about this.
    image

Error with make carla

carla-error-r

Hi!

This issue is solved, but logging it here in case it is helpful to others.

I am using a Windows machine.

I had an error with the first ("make carla") command of DReyeVR after cloning DReveVR via GitHub desktop. Once I recloned DReyeVR with WSL, as Gustavo advised, this error went away.

Cannot use WASD controls in scenario_runner

Hello again friends!

I am having trouble using WASD (manual) controls in scenario_runner. I use the following commands below:

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community>cd %CARLA_ROOT%

C:\...\Documents\G\carla9.12\carla\Build\UE4Carla\0.9.13-1-g8854804f4-dirty\WindowsNoEditor>CarlaUE4.exe

C:\...\Documents\G\carla9.12\carla\Build\UE4Carla\0.9.13-1-g8854804f4-dirty\WindowsNoEditor>cd %SCENARIO_RUNNER_ROOT%

C:\...\Documents\G\carla9.12\scenario_runner>python run_experiment.py --title "dreyevr_experiment" --route %SCENARIO_RUNNER_ROOT%\srunner\data\routes_training.xml %SCENARIO_RUNNER_ROOT%\srunner\data\all_towns_traffic_scenarios1_3_4.json 3
Starting scenario runner
Recording on file: C:/Users/zhuang/AppData/Local/CarlaUE4/Saved/exp_dreyevr_experiment_05_04_2022_15_23_55.rec
INFO:  Found the required file in cache!  Carla/Maps/TM/Town01.bin
Preparing scenario: RouteScenario_3
ScenarioManager: Running scenario RouteScenario_3

And when I try to manually control the vehicle, I am moving at speeds of 1-2.

A few things of note:

  • No Logitech wheel, only keyboard here (we built the most basic DReyeVR)
  • The vehicle just slightly moving in the direction of WASD but not really moving (as in the video). This is with me holding down the keys.
  • When I run normal CarlaUE4.exe I am able to WASD the vehicle without any issues.

Thanks!

How to create a windshield Display in the Ego Vehicle

I know! I know! This isn't an issue.
But, I have fiddled with an unreal engine project for 15 hours straight, and I can't figure out anything. The simulator keeps on crashing.
I am trying to create a windshield display in the ego vehicle to display text. I tried to create a custom socket in the DReyeVR's ego vehicle blueprint and added an elongated sphere for display which would be spawned at the socket on the keyboard input toggle. But, when I run the simulator and give keyboard input, the simulator just crashes. I figure that when I edit the ego vehicle's blueprint class and add something through the event graph, it crashes.

I do not have enough experience with an unreal engine, so I would really appreciate it if you could help me out. If you have any alternate solution of how I could add a windshield display to add text, I would really appreciate it. Thank you.

UE4-CarlaUE4 Editor crash in VR mode. " Fatal Error! "

I really appreciate your work for developing such great tools "DReyeDR".
I have an issue about activation failure of VR mode.
It would be very helpful if you could provide a way for avoiding the issue or any information.

The error what I face is shown as below.
fatal error on UE4 Carla

Environmental setup is listed below.

  • OS: Windows 10 Pro notebook
  • GPU: NVIDIA GeForce RTX 3080
  • VR goggle: HTC VIVE Pro Eye
  • Other Hardware: logicool G29 (Pedals & steering)
  • Carla version: 0.9.11
  • UE4 version: 4.24
  • DReyeVR version: 0.9.11
  • Steam VR version: 1.22.13

I followed your detailed instructions for building environment refering to

You really helped me by detailed instructions, especially some bugs in plugin.
I finished up the above environmental setups without no errors except above one.
The error was happened when after selectiong "VR preview" mode of Play button in CarlaUE4 Editor.

When VIVE Pro was disconneted to PC, I run in "Stand alone" mode without errors.
When VIVE Pro was conneted to PC, I run in "Stand alone" mode with the above error.
I think there's an error in part of VR setting.

Could you know how to deal with the error above?
Especially I want to clarify which parts made mistakes.
Thanks.

How to disable the speed display?

image

Hello friends!

I'm wondering how to disable the red speed display on the right side.

I have managed to disable the big red target and the FPS count by setting these variables in C:\...\...\ CARLA_0.9.13-1-g8854804f4-dirty\WindowsNoEditor\CarlaUE4\Config to false. I can't seem to find the speed display though.

DrawFPSCounter=False; draw's FPS (frames per second) in top right corner of flat screen
DrawFlatReticle=False; reticle in flat-screen mode

Trying to run scenario_runner example script fails - ModuleNotFoundError: No module named 'DReyeVR_utils'

Hello again Gustavo and HARPLab,

I am trying to run the following code/ here is my output:

python run_experiment.py --title "dreyevr_experiment" --route %SCENARIO_RUNNER_ROOT%\srunner\data\routes_custom.xml %SCENARIO_RUNNER_ROOT%\srunner\data\town05_scenarios.json 0
Traceback (most recent call last):
File "run_experiment.py", line 27, in
from scenario_runner import ScenarioRunner
File "C:\Users\kp\Documents\G\carla9.12\scenario_runner\scenario_runner.py", line 39, in
from srunner.scenarios.route_scenario import RouteScenario
File "C:\Users\kp\Documents\G\carla9.12\scenario_runner\srunner\scenarios\route_scenario.py", line 52, in
from DReyeVR_utils import find_ego_vehicle
ModuleNotFoundError: No module named 'DReyeVR_utils'

I have executed the commands to make both DReyeVR and the scenario runner part of DReyeVR.

Any thoughts are appreciated! Thanks again!

Enable autonomous driving mode for ego vehicle using C++

In your documentation, it was indicated that currently, AI handover is only supported through PythonAPI. But unfortunately, it doesn't serve well for my study implementation. Why is AI handover not supported using C++? Is there a way I could implement it?
I really appreciate any help you can provide.

make: *** No rule to make target 'carla'. Stop. - DReyeVR Installation

Hello team,

CARLA version: 0.9.13

Platform/OS: Windows 10 (Version 21H2)

Problem you have experienced: When I try to install the DReyeVR in the WSL using the command make carla CARLA=../carla it throws an error as shown below in the screenshot.

image

Steps to reproduce:

  1. I previously had a working 0.9.13 Carla with Unreal 4.26 installed and working successfully. (All three make PythonAPI, make launch and make check executed without any errors)
  2. I have the SteamVR installed and use HTC Vive eye Pro for eye tracking.
  3. Enabled the SteamVR in UE4 as shown in the screenshot below:

image

  1. Currently concentrating on only Logitech Steering Wheel (I have Logitech 920 which is installed and works fine) so SRanipal is not downloaded or setup. But the Logitech Wheel Plugin is cloned and moved to the Carla Plugin folder and the plugin folder looks as below.

image

  1. Installing DReyeVR is the step causing the problem. I have Ubuntu installed and I am at the Carla root folder to execute the command (make carla CARLA=../carla) which throws the error "make: *** No rule to make target 'carla'. Stop.".

  2. I have git installed with the necessary environmental variable path.

image

image

Could you please help me with where I am going wrong and how to move forward with the installation?

I very much appreciate any help. Thank you in advance.

Hardware requirements / performance recommendations?

Hello, I'm interested in trying out DReyeVR, but I don't have any of the hardware yet.
In SetupVR.md, you mention that performance may be an issue even with powerful GPUs. What GPU/CPU/RAM was used in development? What kind of frame rates were you able to achieve?
I prefer to use Linux wherever I can.

Thank you
Jason

How to get Logitech steering wheel readings/measurements?

I would like to measure the handover performance in SAE level 3 autonomous vehicles when Take-Over Request (TOR) is issued, and measuring this involves recording the Standard deviation in steering wheel rotation and Maximum Steering Angle velocity. These metrics require to get the steering wheel readings. I tried to interpret the DReyeVR source code but couldn't get a clear picture of how to achieve this. I would love it if you could answer a few questions:

  1. How can I record the steering wheel measurements? Could you please give a high-level idea of the implementation?
  2. What would be the units and range of those measurements? (You could just redirect me to the documentation if exists)
  3. Can it be done through PythonAPI, or will have to modify the DReyeVR source code?

Note: I just require the raw readings (like steering angle). I would be able to figure out how to compute the metrics.
Thanks!

How to run DReyeVR on three connected moniter display.

The idea is to not use a VR headset for now, and I would like to run the simulator on three connected mounted monitors. The front monitor would display the windshield field of view, and the side monitors would display the view of the side windows.

Camera doesn't move with car while running DreyeVR_AI.py

Hello Gustavo (and DReyeVR team)!

The camera of DReyeVR_AI.py does not seem to move with the car.

I am running both the 2D and VR version of DReyeVR with the following commands:

CarlaUE4.exe OR CarlaUE4.exe -vr
python DReyeVR_AI.py

Here is the output after the python command:

WARNING: Version mismatch detected: You are trying to connect to a simulator that might be incompatible with this API
WARNING: Client API version = 0.9.13
WARNING: Simulator API version = 0.9.13-1-g8854804f4-dirty
INFO: Found the required file in cache! Carla/Maps/TM/Town03.bin
Successfully set autopilot on ego vehicle
successfully spawned 10 vehicles

Below is an image of what I see as the car turns without repositioning myself. I have to physically move my body/ the camera in order to see the front of the car again.

carla-error-turning

How can I get fps on VR mode?

As I mentioned the title, It would be helpful if someone could provide a way or code how to calculate fps on VR mode.
I found "get_fps" method in "update_hud_info" function of "no_rendering_mode.py". I guess this method should be run while executing CarlaUE4.exe -vr. Is it correct or is there any easy way?

Steering Wheel Support

Hello,

I am using the Logitech Momo Racing wheel which according to the LogitechWheel github is supported by the plugin. However, I am getting no input into the system in either the full package or in the editor. Please let me know the right procedure for setting my steering wheel up or debugging this issue. I may be able to map the controls manually in the editor if I knew which blueprints I would need to edit to replace the keyboard controls (which do work for me).

Position calibration unstable.

Hi, thanks for the VR implementation!

I encontered a problem that when entering VR mode, the driver's position calibration seems failed. Is there any way to re-calibrate it?
image

After adjusting camera, DReyeVR_AI.py returns the camera to the original position and is unable to be moved in the Z-plane while driving

Hello Gustavo (and DReyeVR team)!

This is most likely related to #14 , but I had to reposition the camera in VR view. Upon executing python DReyeVR_AI.py, the camera was returned to the original unadjusted position. Once the DReyeVR_AI.py code was running, I was able to use the arrow keys to turn the camera on the XY axis, but I could not use page up/ page down to reposition the camera on the Zaxis. This was problematic because my "default" position appears to be somewhere on the roof of the car.

Thanks for all of your help!

See photo below for my view when driving with AI

carla-error-above-car
!

Route Scenario issues

Hi,

I recently started using DReyeVR for a behavioral research project and ran into some issues, so some help would really be appreciated. Note that I have not modified the code, just running the simulator, the scenario runner python script: β€œpython run_experiment.py --title "dreyevr_experiment" --route %SCENARIO_RUNNER_ROOT%\srunner\data\routes_training.xml %SCENARIO_RUNNER_ROOT%\srunner\data\all_towns_traffic_scenarios1_3_4.json 2 --debug”, and the DReyeVR_AI script.

Issues:
(1) The RouteScenario class specifies 10 supported scenarios (scenario1,...,scenario10). Triggered scenarios, however, give inconsistent behavior. scenario1, which is ControlLoss, does nothing currently. Scenario3, which is DynamicObjectCrossing, seems to be the only one that consistently triggers correctly, the other scenarios do something inconsistent with the description.

(2) The FollowLeadingVehicleWithObstacle scenario, is currently not listed in the RouteScenario. I tried to add it to the list of supported scenarios but it does not work. I assume there are some changes that have to be made either in data or code to get this working. Can you give me some feedback on what I need to modify to get this working?

(3) DynamicObjectCrossing currently triggers a pedestrian crossing the street from a soda machine. According to the code, we should be able to set the adversary_type flag to true to choose a cyclist. However, the cyclist spawns at the Soda machine and does nothing. The log shows that the behavior is waiting on some whiteboard variable. Can you tell me what extra step is needed to switch to the cyclist since setting the adversary_type is not enough?

(4) Changes to DReyeVRConfig.ini are not being read when I relaunch CarlaUE4.exe Is there something extra needed when changing values in the INI file?

Thanks in advance for your help.
Regards,
Felix

Assertion failed: px != 0, file shared_ptr.hpp

Dear HARPLab team,

We are trying to get a functioning installation of DReyeVR withtout success so far. Our computer specs are:
Windows 10
Nvidia 3090
24Gb RAM
Intel(R) Core(TM) i5-10600K
500Gb SSD
Lenovo Explorer VR Headset
Logitech G29 steering wheel

We have followed the instructions at Installing DReyeVR to a working Carla 0.9.13 build and manage to launch CARLA server from the Unreal Engine, and see the car from up above with the VR headset, and steer the car with the wheel, but we cannot change the point of view to the driver's seat.

We have tried launching the script "schematic_mode.py", but it fails with the following output:
`Welcome to CARLA No-Rendering Mode Visualizer

TAB          : toggle hero mode
Mouse Wheel  : zoom in / zoom out
Mouse Drag   : move map (map mode only)

W            : throttle
S            : brake
AD           : steer
Q            : toggle reverse
Space        : hand-brake
P            : toggle autopilot
M            : toggle manual transmission
,/.          : gear up/down

F1           : toggle HUD
I            : toggle actor ids
H/?          : toggle help
ESC          : quit

WARNING: Version mismatch detected: You are trying to connect to a simulator that might be incompatible with this API
WARNING: Client API version = 0.9.13
WARNING: Simulator API version = 0.9.13-dirty
Initializing DReyeVR ego vehicle as hero_actor
initialized DReyeVRSensor PythonAPI client
Assertion failed: px != 0, file C:\workspace\carla\Build\boost-1.72.0-install\include\boost/smart_ptr/shared_ptr.hpp, line 734`

Could you help us to figure out what we need to do? Thanks for your work and best regards.

Unusual behaviour of DReyeVR_vehicle after autpoilot is disabled

Once the traffic manager's autopilot is set to True for the ego vehicle, it runs autonomously perfectly. However, when it is disabled afterward, the vehicle still has a throttle and a steer. Why is that so?
I tried to apply manual control with everything to default settings (like steer = 0, brake = 0.5, etc), however, it does not work. If you require any additional information/logs, please let me know.

Performance issues in DReyeVR

I am having performance issues after modifying the DReyeVR, possibly because I am a beginner to Unreal Engine and have limited experience with C++. I have written some in EgoVehicle.cpp and EgoVehicle.h, and now the car is not moving forward (Here is a video demonstration). Basically, the car is not moving forward/backward with a speed of greater than 4-5 mph. I am not sure what the issue is, i.e. if it's a performance issue and the code has to be optimized or I am calling the functions in the wrong methods. I would really appreciate it if you could help me out. To view the changes I have made, here is my repo link: https://github.com/shh1v/DReyeVROFR.

Autopilot not functioning after Logitech steering wheel input is given

When I launch the simulator and turn on autopilot for DReyeR_vehicle using PythonAPI, then:

Trial 1: When I give a WSAD input momentarily, it does get simulated and the vehicle moves, then when the keys are released, the autopilot repositions the car to the correct lane. This behavior is accurate and expected.

Trial 2: When the Logitech steering wheel and pedal are connected before the launch, and then the simulator is launched, either (1) autopilot does not work correctly (the vehicle has 0-1 km/hr speed), or (2) The autopilot works correctly initially but when Logitech input is given, unusual autopilot behavior is observed.

Edit: By unusual autopilot behavior in point (2) of Trial 2, I meant that behavior (1) was observed.

I have no clue why this is happening. I would really appreciate any input (pun intended) you have. Thank you.
Note that I did modify DReyeVRPawn.cpp/.h but, I also tried the original source codes, and they also seem to have the same problem.

Please let me know if you need any further information. Thank you.

Cannot open python operation file in PythonAPI/examples

I encountered another question after I start the application from the path E:\carla\Build\UE4Carla\0.9.13-1-g8854804f4-dirty\WindowsNoEditor

  ./CarlaUE4.exe -vr

The error occurs when I want to run any python operation file such as DReyeVR_AI.py or dynamic_weather.py, it failed. The error code is:

File "DReyeVR_AI.py", line 140, in main
ego_vehicle.set_autopilot(False, traffic_manager.get_port())
UnboundLocalError: local variable 'ego_vehicle' referenced before assignment

Any possible reason for this?

Using conda for PythonAPI

I am installing 2 times carla, one of them from their site the other from DReyeVR, which path you mean in this line?
image
I consider carla from DReyeVR as a desire path. I have done "make PythonAPI", should I "make clean" then again "make PythonAPI" before trying or not?

PythonAPI Assertion failed: px != 0

    Hi

when i was trying to add a safe distance sensor in carla (as per the doc : https://carla.readthedocs.io/en/0.9.13/tuto_D_create_sensor/) im also facing the same issue

WARNING: Version mismatch detected: You are trying to connect to a simulator that might be incompatible with this API
WARNING: Client API version = 0.9.13
WARNING: Simulator API version = 0.9.13-1-g8854804f4-dirty
INFO: Found the required file in cache! Carla/Maps/TM/Town10HD_Opt.bin
INFO: Found the required file in cache! Carla/Maps/Nav/Town10HD_Opt.bin
basic agent set destination
ActorBlueprint(id=sensor.other.safe_distance,tags=[sensor, other, safe_distance])
Assertion failed: px != 0, file C:\workspace\carla\Build\boost-1.72.0-install\include\boost/smart_ptr/shared_ptr.hpp, line 734

and the server crashed

Could you help us to figure out what we need to do? Thanks for your work and best regards.

Originally posted by @inv-mary in #12 (comment)

Eye tracker floating around in the experimenter's view

Hi team,

CARLA version: 0.9.13

Platform/OS: Windows 10 (Version 21H2)

Problem you have experienced: I have installed the CarlaDReyeVR on the computer with below specifications and face issue with the eye tracking. The tracker floats around even when the gaze is fixed.

Steering Wheels & Pedals: I have Logitech 920 which is installed and works fine

SRanipal version: VIVE_SRanipalInstaller_1.1.0.1

Steps to reproduce: In the X64 Native command prompt, path to CarlaDReyeVR\carla\Build\UE4Carla\0.9.13-dirty\WindowsNoEditor and execute CarlaUE4.exe -vr

Below steps have been tried and yet unsuccessful.

  1. I started the application I ran the SRianipal Runtime and it said the runtime is running in the system tray.
  2. The CarlaUE4.log shows it was " Unable to start SRanipal Framework ''. Attaching the log for your reference too.
  3. I have installed VIVE_SRanipalInstaller_1.1.0.1.
  4. USE_SRANIPAL is set to true in CarlaUE4.Build.cs.
  5. When I started the DReyeVR application from Carla root folder through make launch and viewed in the VR mode, the eye tracker looked different and it was seen both in the experimenter & participant's view. Attached is a snippet of the same.
  6. I downloaded the latest version of CarlaDReyeVR on 26th of June 2022. Were there any commits after that?
Clipfrom_WindowsNoEditor.mp4

CarlaUE4.log

Thank you very much in advance.

Best Regards

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.