![]() One of these was the way that the target arrows pulsed in time with the music. One of the first things I noticed after doing this is that there are a number of visual cues around the screen which might be helpful to time the simulated keystrokes. Once the permissions are granted in System Preferences, we are able to capture the game window. Getting the game screen into Max was fairly easy, but the first time you use jit.desktop you need to explicitly give it permission to capture the screen. We’ll therefore ask Max to watch the desktop with: jit.desktop 4 char 600 480 2 45 602 525 Getting the Game Screen Into Max While the game window is now upscaled to 600×480, the actual location of the game window on my screen starts at (2, 45) given the border of the windows and menu bar in macOS Catalina. We’ll re-downscale this in Max with interpolation off ( jit.matrix 4 char 300 240 0) to reduce our pixel crunching. * As well as adjusting the scale of the window, OpenEmu lets you apply filters the emulation, so I’ve kept this as Pixellate to preserve hard edges by duplicating pixels without smoothing. ![]() The size of the game window (at 1.0x) in OpenEmu is 300×240 (which is a little small on my 2560×1440 display), so I elected to upscale the window in OpenEmu a little bit (2.0x) to make it a little more ‘readable’ on my screen.* As we’re going to use Max to observe the game though, this means that we’re actually asking it to watch 4.0x as many pixels (given that it is doubled in width and height… but my 2013 machine seems to cope OK). The first thing that is worth doing is making OpenEmu’s emulation larger. But, as it turns out, we can get surprisingly far with some primitive computer vision strategies. The idea took several approaches before the system was confident enough to know how to play. The mats had been folded up for years and no longer worked very well, but the futile exercise got me thinking about how you might create a virtual DDR-bot with Max that could ‘read’ the arrow information from the screen to trigger button presses automatically. I have an original PSX and a copy of the game that are boxed up somewhere, so I tracked down an ISO of the game (and connected the mats to the computer with a PSX to USB converter) to try them out with an emulator instead. It all started when I found some PlayStation ‘dance mat’ controllers ( like these) that were made for the Dance Dance Revolution PSX game. Max plays some of the more difficult levels of the game.
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |