Skip to content

About

Touchless Panda Runner - Play with your body movements using webcam!

Topics

Resources

Stars

4 stars

Watchers

0 watching

Forks

Latest commit

ย 

History

7 Commits

Folders and files

Repository files navigation

panda_logo # ๐Ÿผ PandaVision โ€” Touchless Runner

๐Ÿผ An Original Endless Runner Controlled with Computer Vision

Move yourself. Control the Panda.


๐ŸŽฎ About PandaVision

PandaVision is an original endless-runner game built with Python, Pygame, OpenCV and computer vision techniques.

The project combines traditional game development with real-time webcam interaction to create a more natural and interactive gaming experience.

Instead of depending only on a keyboard, PandaVision is designed to understand the player's movement through a webcam and convert it into actions inside the game.

The idea is simple:

Camera โ†’ Computer Vision โ†’ Movement Detection โ†’ Game Action โ†’ ๐Ÿผ Panda

PandaVision is being developed as an experiment in touchless gaming and human-computer interaction.


โœจ What Makes PandaVision Different?

Traditional runner games usually depend on:

  • Keyboard
  • Mouse
  • Touch controls
  • Game controllers

PandaVision explores another approach:

What if your physical movement could become the game controller?

The project combines:

๐ŸŽฎ Game Development
๐Ÿ“ท Computer Vision
๐Ÿ–๏ธ Gesture & Motion Detection
๐Ÿ Python Programming
โšก Real-Time Interaction

into one project.


๐Ÿผ Game Features

๐ŸŽฎ Endless Runner Gameplay

PandaVision follows the classic endless-runner concept where the player must keep the Panda alive while avoiding obstacles.

Current gameplay includes:

  • Endless running
  • Jump mechanics
  • Gravity and physics
  • Obstacle movement
  • Collision detection
  • Score tracking
  • Increasing difficulty
  • Best-score tracking
  • Coin counter
  • Game status information

๐Ÿ“ท Real-Time Webcam Tracking

One of the main features of PandaVision is webcam-based interaction.

The webcam captures the player's movement and the computer vision system processes the camera feed in real time.

Processing pipeline

           ๐Ÿ“ท WEBCAM
               โ”‚
               โ–ผ
        โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
        โ”‚    OpenCV     โ”‚
        โ”‚ Camera Input  โ”‚
        โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                โ”‚
                โ–ผ
        Motion Detection
                โ”‚
                โ–ผ
       Gesture / Movement
           Recognition
                โ”‚
                โ–ผ
        Game Controller
                โ”‚
                โ–ผ
             ๐Ÿผ PANDA
๐Ÿ–๏ธ Touchless Gameplay

The planned control system allows real-world movements to trigger actions inside the game.

For example:

๐Ÿ™‹ Player Movement
       โ†“
๐Ÿ“ท Webcam
       โ†“
๐Ÿง  Computer Vision
       โ†“
โšก Movement Detected
       โ†“
๐Ÿผ Panda Action

Possible actions include:

Player Movement	Game Action
Move left	Move left
Move right	Move right
Jump movement	Jump
Duck movement	Duck
Hand wave	Start / interaction

The exact gesture mapping continues to evolve during development.

๐ŸŒฟ PandaVision World

The game is being designed around an original Panda-themed environment.

Planned game elements include:

๐ŸŽ‹ Bamboo
๐Ÿชจ Rocks
๐Ÿชต Logs
๐ŸŒณ Trees
๐Ÿฆ Flying obstacles
โ˜๏ธ Clouds
โ˜€๏ธ Day environment
๐ŸŒ™ Night environment

The goal is to create a recognizable world rather than simply recreating an existing runner game.

๐Ÿ† Scoring System

PandaVision includes a score-based endless-runner system.

The game tracks:

SCORE
BEST SCORE
COINS

As the player survives longer, the game becomes progressively more challenging.

Difficulty progression
Start
  โ†“
Normal Speed
  โ†“
More Obstacles
  โ†“
Higher Speed
  โ†“
Faster Reactions
  โ†“
More Difficult Gameplay
๐Ÿง  Technology Stack
Technology	Purpose
๐Ÿ Python	Main programming language
๐ŸŽฎ Pygame	Game development and rendering
๐Ÿ“ท OpenCV	Webcam processing and computer vision
๐Ÿ–๏ธ MediaPipe	Landmark / gesture detection
๐ŸŽจ Pixel Art	Game visual style
๐Ÿ› ๏ธ Core Technical Concepts

PandaVision is also a learning project covering several important programming and computer-science concepts.

Game Development
Game loops
Event handling
Player physics
Gravity
Jump mechanics
Collision detection
Object movement
Animation
Score systems
Difficulty scaling
Computer Vision
Webcam input
Real-time frame processing
Motion tracking
Landmark detection
Gesture recognition
Coordinate mapping
Real-Time Systems

The game continuously processes:

Camera Input
     +
Computer Vision
     +
Game Physics
     +
Rendering
     +
User Interaction

all within a real-time game loop.

๐Ÿ“ Project Structure
PandaVision/
โ”‚
โ”œโ”€โ”€ main.py
โ”‚
โ”œโ”€โ”€ assets/
โ”‚   โ”œโ”€โ”€ panda/
โ”‚   โ”‚   โ”œโ”€โ”€ panda_run1.png
โ”‚   โ”‚   โ”œโ”€โ”€ panda_run2.png
โ”‚   โ”‚   โ”œโ”€โ”€ panda_jump.png
โ”‚   โ”‚   โ””โ”€โ”€ panda_gameover.png
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ environment/
โ”‚   โ”œโ”€โ”€ obstacles/
โ”‚   โ””โ”€โ”€ sounds/
โ”‚
โ”œโ”€โ”€ computer_vision/
โ”‚   โ”œโ”€โ”€ motion_tracking.py
โ”‚   โ””โ”€โ”€ gesture_detection.py
โ”‚
โ”œโ”€โ”€ README.md
โ””โ”€โ”€ requirements.txt

The project structure may change as development continues.

๐Ÿš€ Getting Started
1. Clone the Repository
git clone https://github.com/YOUR-USERNAME/PandaVision.git

Enter the project directory:

cd PandaVision
2. Install Dependencies

Install the required Python packages:

pip install pygame opencv-python mediapipe

If a requirements.txt file is available:

pip install -r requirements.txt
3. Run PandaVision
python main.py

Make sure your webcam is connected and available if you are using webcam-based controls.

๐ŸŽฎ Development Controls

During development, keyboard controls can be used for testing.

Key	Action
SPACE	Jump
โ†‘	Jump
โ†	Move Left
โ†’	Move Right
โ†“	Duck
ESC	Exit

The long-term goal is to minimize or remove the need for keyboard controls.

๐Ÿ“ธ Webcam Mode

When webcam mode is enabled, PandaVision displays the camera feed and processes player movement.

The game can provide information such as:

OPENCV MOTION TRACKING

GAME RUNNING

ACTION: JUMP

LANE: CENTER

This makes the computer-vision system visible during development and demonstration.

๐Ÿ—๏ธ Development Roadmap

PandaVision is an evolving project.

โœ… Current
 Basic endless-runner gameplay
 Pygame game loop
 Panda-themed game concept
 Player physics
 Jump mechanics
 Obstacle system
 Collision detection
 Score system
 Increasing difficulty
 Webcam integration
 OpenCV motion tracking
 Real-time game status display
๐Ÿ”จ In Development
 Smooth Panda running animation
 Improved Panda character system
 Multiple obstacle types
 Better collision hitboxes
 Advanced gesture recognition
 Smooth lane movement
 Improved webcam tracking
 Sound effects
 Background music
 Day/night cycle
 Improved environment
 Game start screen
 Pause system
 Game-over screen
 Restart system
๐Ÿš€ Future
 Fully keyboard-free gameplay
 Advanced hand-landmark controls
 More Panda animations
 More environments
 Special abilities
 Power-ups
 Persistent high scores
 Performance optimization
 Improved visual effects
 Complete polished release
๐Ÿ’ก Project Vision

PandaVision started as a simple runner-game experiment.

The idea gradually evolved into something bigger:

Create a game that can understand the player.

Instead of pressing a button to tell the game what to do, the player can use physical movement to interact with the game.

The long-term vision is to explore how computer vision can make gaming more natural, accessible and interactive.

๐Ÿ”ฌ What I Learned From This Project

Building PandaVision involves learning and applying:

Python programming
Pygame development
Game physics
Collision detection
Object-oriented game design
Real-time rendering
Webcam processing
OpenCV
MediaPipe
Motion tracking
Gesture recognition
Coordinate systems
Animation systems
Real-time input processing
Debugging and optimization

This project is not only about making a game.

It is about understanding how different technologies can work together to create an interactive system.

๐ŸŽฅ Demo
PandaVision in action

Add your demo video or GIF here.

Example:

๐Ÿ“ท Webcam ON
       โ†“
๐Ÿ™‹ Player moves
       โ†“
๐Ÿง  Computer Vision detects movement
       โ†“
โšก Action generated
       โ†“
๐Ÿผ Panda responds
       โ†“
๐ŸŽฎ Game continues
๐ŸŒŸ Why I Built PandaVision

I wanted to experiment with the combination of game development and computer vision.

Instead of building another ordinary game controlled only by a keyboard, I wanted to explore:

Can a webcam become a game controller?

PandaVision is my attempt to answer that question.

๐Ÿผ The Goal

The final experience should feel like this:

        YOU
         โ”‚
         โ”‚  Move
         โ–ผ
     ๐Ÿ“ท WEBCAM
         โ”‚
         โ–ผ
   ๐Ÿง  COMPUTER VISION
         โ”‚
         โ–ผ
      ๐ŸŽฎ GAME
         โ”‚
         โ–ผ
       ๐Ÿผ PANDA
No traditional controller required.
Just movement.
Just interaction.
Just PandaVision. ๐Ÿผ
๐Ÿ“Œ Project Status

๐Ÿšง Active Development

PandaVision is continuously being improved with new gameplay mechanics, computer-vision features, animations and visual elements.

The current version is a working prototype, while the ultimate goal is a polished touchless endless-runner experience.

๐Ÿ‘จโ€๐Ÿ’ป Developer

Deepu

Built with:

Python + Pygame + OpenCV + Computer Vision

โญ Support

If you find the project interesting:

โญ Star the repository
๐Ÿด Fork the project
๐Ÿ’ก Share feedback
๐Ÿš€ Follow the development

๐Ÿ“œ License

This project is created for educational, experimental and portfolio purposes.

The project uses original PandaVision concepts and assets developed for this project.

<p align="center">
๐Ÿผ PandaVision
Move Yourself. Control the Panda.

Built with Python โ€ข Pygame โ€ข OpenCV โ€ข Computer Vision

</p> ```

About

Touchless Panda Runner - Play with your body movements using webcam!

Topics

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages