GamingVision

Making games accessible for visually impaired players

About

GamingVision is a Windows accessibility tool that uses computer vision and text-to-speech to make video games accessible to visually impaired players. The application detects UI elements in games using trained YOLO models, extracts text via OCR, and reads it aloud with configurable priority levels.

As a visually impaired gamer, I built this tool to solve my own accessibility challenges. Many games lack built-in screen reader support, making it difficult for players with low vision to read menus, inventory items, and in-game text. GamingVision bridges that gap.

This project evolved from my earlier Python-based "No Man's Access" tool, rebuilt from the ground up in C#/.NET 8 for better performance, easier distribution, and a proper Windows GUI.

GamingVision main application window showing game selection dropdown, Start Detection button, status panel displaying detection state and GPU info, and keyboard shortcuts reference including Alt+1 through Alt+5 and Alt+Q

Key Features

How It Works

GamingVision uses a three-tier detection system designed around how gamers actually interact with game UIs:

This approach lets you quickly navigate menus and only hear detailed information when you actually want it, rather than being overwhelmed with constant speech.

Visual Overlay

In addition to text-to-speech, GamingVision can display a visual overlay that highlights detected objects with high-contrast markers. Waypoints and other tracked elements are covered with black-bordered white boxes, making them much easier to see for players with low vision.

GamingVision visual overlay showing a high-contrast black-bordered white box covering a waypoint marker in-game, making it easier to track navigation targets

Note: The overlay feature is still in early development. It currently reduces game performance and has noticeable latency between detection and drawing, which can cause visual artifacts. Despite these limitations, it's still incredibly helpful for tracking where you need to go in-game.

Default Hotkeys

All hotkeys are configurable per game in the Game Settings panel.

Game Settings window showing capture method options, detection settings with confidence thresholds and auto-read cooldown sliders, voice configuration for primary, secondary, and tertiary tiers with voice selection and speech rate controls, and customizable hotkey assignments

Getting Started

Requirements

Application-wide settings like GPU acceleration and debug logging can be configured in the App Settings panel.

Application Settings window showing GPU acceleration toggle with detected graphics card info, and debugging options including enable logging checkbox with log file path

Quick Start

Adding Support for New Games

GamingVision uses per-game YOLO models to detect UI elements. Each game requires its own trained model because UI layouts, fonts, and visual styles vary significantly between games. If you want GamingVision to support a game that isn't available yet, you can help by collecting training data.

Training Data Collection Tool

GamingVision includes a console-based tool for collecting screenshots. If a model already exists for a game, it will automatically pre-label new screenshots to speed up the process.

Want a Model for Your Favorite Game?

The model training pipeline using Python and CUDA is still being refined, so I'm not asking everyone to train their own models just yet. However, if you're interested in getting a specific game supported:

This collaborative approach ensures quality models while the training workflow matures. Reach out at jpdoesdev@gmail.com if you'd like to help add support for a new game.

Why This Project Exists

The primary goal of GamingVision is to help visually impaired players enjoy games that would otherwise be inaccessible. But there's a bigger picture here.

This tool also serves as a demonstration for game developers. Everything GamingVision does through computer vision and external screen reading could be done far more effectively if built directly into games. Native accessibility features would be faster, more accurate, and wouldn't require players to run additional software.

If you're a game developer interested in making your game more accessible, I'd love to collaborate. The techniques used in GamingVision - tiered UI reading, configurable speech priorities, hotkey-triggered announcements - could all be implemented natively with much better results.

Help Add New Games

If you'd like to help expand GamingVision's game support, you can collect training data for games you play. Use the Training Tool to capture screenshots, then get in touch and I'll help you through the annotation and training process. Every new game model helps more visually impaired players enjoy games they couldn't access before.

Get In Touch

Interested in working together on game accessibility? Reach out: