Succeeded in playing 'DOOM' with modern car navigation system, movie operated using steering wheel is on sale



DOOM , which has been ported to various terminals such as medical ultrasound scanners , Twitter , FM TOWNS , notepads , and tractor in-vehicle systems, is now playable on the in-vehicle infotainment system installed in Hyundai vehicles. A dead villain has appeared.

How I Hacked my Car Part 6: Nothing to it but to Doom it. :: Programming With Style
https://programmingwithstyle.com/posts/myhackedcarisdoomed/



Hyundai Is Doomed: Porting The 1993 Classic To A Hyundai Head Unit |
https://hackaday.com/2023/06/11/hyundai-is-doomed-porting-the-1993-classic-to-a-hyundai-head-unit/

The 2021 Hyundai Ioniq SEL features an Android Auto-enabled in-car infotainment system on the front dashboard. Since this is a Linux-based system, it seems that attempts have been made to port various applications so far. Based on these ideas, greenluigi1 wondered if it would be possible to play DOOM on an in-vehicle infotainment system.

Although the in-vehicle infotainment system is based on Linux, it seems that DOOM could not be recompiled because the system environment was built with its own specifications. So greenluigi1 decides to port doomgeneric , which was created to facilitate porting of DOOM, to an in-vehicle infotainment system. The reason for using doomgeneric is that 'it only needs to implement five functions'.

It seems that two of the five functions could be copied directly from the X11/xlib port, but there seemed to be problems implementing the remaining three. In particular, simply sticking to the processing of the window manager called 'Helix' in the head unit, which is part of the in-vehicle infotainment system, and restricting how GUI applications can be launched 'didn't work,' greenluigi1 said. Mr. Miss.

For the proof of concept, all you had to do was hardcode some parameters and register the game with Helix using a .appconf configuration file. In order to draw beautiful graphics on the screen, I adopted the method of drawing to QPixmap using Qt5 . However, at the time of the first implementation, it seems that only a pure white screen was drawn on the display of the in-vehicle infotainment system. In addition, it seems that this was caused by the fact that the default alpha channel value is '0' and the need to explicitly update the QPixmap.

Below is a video that shows how DOOM is actually played on Hyundai Motor's in-vehicle infotainment system.

DAudio2Doom Gameplay-YouTube


When you start the game, 'BUCKLE IN' is displayed on the display of the in-vehicle infotainment system.



When you fasten your seat belt, the game screen is displayed and DOOM can be played.



The game screen looks something like this.



The game is controlled by the steering wheel of the vehicle and the head unit. Turning the steering wheel clockwise moves the viewpoint of the game screen to the right, and turning the steering wheel counterclockwise moves the viewpoint of the game screen to the left. move in the direction



Also, if you push the volume control button on the left side of the steering wheel upwards, the character will move forward, and if you push it downwards, the character will move backwards.



Weapons can be used by pressing the mute button.



In addition, greenluigi1 named the project to implement DOOM in the in-vehicle infotainment system of Hyundai Motor as 'DAudio2Doom', and published the source code etc. used on GitHub.

GitHub - greenluigi1/DAudio2Doom
https://github.com/greenluigi1/DAudio2Doom



in Software,   Ride,   Video,   Game, Posted by logu_ii