Logo
Accueil
Projets
Blog

Prêt à créer
quelque chose d'incroyable ?

Company logo

Ali Benkarrouch

Étudiant en génie logiciel à l'ETS

Get upTélécharger mon CV
LinkedInGithubEmail

Contactez-moi

© 2026 Ali Benkarrouch. Tous droits réservés.
0%
Tous les projets
Spellmotion
juillet 2025

Spellmotion

J'ai entrepris ce projet en solo avec la volonté d'explorer le domaine de la vision par ordinateur à travers une application concrète. Passionné par le développement, j'ai eu l'idée de fusionner cette technologie avec la création de jeux vidéo pour concevoir une expérience immersive où les commandes physiques traditionnelles sont remplacées par des interactions naturelles. L'objectif était de transformer des concepts théoriques de traitement d'image en un outil de contrôle intuitif et réactif pour un environnement virtuel.

Ma contribution

En tant que concepteur unique, j'ai développé l'intégralité de l'écosystème en commençant par une application Python dédiée à l'intelligence artificielle. J'ai utilisé MediaPipe et OpenCV pour détecter les points de repère de la main et j'ai conçu des algorithmes de classification capables de traduire des gestes spécifiques en commandes de sorts. Pour la partie ludique, j'ai bâti sous Unity un jeu de défense complet incluant la logique de combat, les systèmes de particules pour les effets magiques et la gestion des vagues d'ennemis. J'ai également assuré la synchronisation entre ces deux univers en mettant en place une communication bidirectionnelle par WebSockets, permettant une transmission quasi instantanée des données JSON pour garantir la fluidité du gameplay.

Project Gallery

Visual Overview

Spellmotion screenshot 1

Approche

Ma stratégie a reposé sur une architecture découplée afin de maximiser les performances de chaque composant. J'ai séparé le traitement lourd de la vision par ordinateur, géré par le script Python, du rendu graphique pris en charge par le moteur Unity. Cette approche modulaire m'a permis d'isoler et d'affiner la précision de la détection gestuelle indépendamment du moteur de jeu. Pour lier l'ensemble, j'ai choisi le protocole WebSocket en local, ce qui offre une latence minimale indispensable à la sensation de contrôle en temps réel, transformant ainsi une simple webcam en un périphérique de jeu sophistiqué.

Fonctionnalités

  • Reconnaissance gestuelle IA
  • Communication WebSocket temps réel
  • Moteur de jeu Unity
  • Système de sorts variés
  • Effets visuels (VFX)
  • Gestion de vagues d'ennemis

Technos

OpenCVOpenCVUnityUnityMediaPipeMediaPipeFlaskFlaskC#C#PythonPython

Sources

Github (Unity)
Github (Unity)
Github (Comp. Vision)
Github (Comp. Vision)

More Projects

Explore Other Work

Progression - Visualisation

Progression - Visualisation

Lors de ma dernière session au Cégep de Rosemont, j'ai eu l'opportunité de contribuer à Progression, une plateforme d'apprentissage de la programmation de type "LeetCode" développée par le département. Au sein d'une équipe de sept développeurs, notre mandat était d'enrichir l'expérience pédagogique en ajoutant une dimension visuelle à la résolution de problèmes. L'objectif était de permettre aux étudiants de ne plus seulement voir du code, mais de comprendre la dynamique de leurs algorithmes en temps réel.

février 2025

ProjetR

ProjetR

Juste avant le début de notre stage au cégep, un de nos enseignants a approché Nicholson et moi avec une idée : développer une application qui permettrait aux étudiants de mettre en valeur leurs projets. Comme nous n’avions pas l’ambition de bâtir une plateforme complète en parallèle du stage, mon collègue et moi avons plutôt choisi de créer un MVP. Nous l’avons ensuite présenté aux enseignants du département d’informatique du Cégep Rosemont, qui se sont montrés ouverts à l’idée de pousser le projet plus loin avec les cohortes suivantes.

juin 2025

Runebound

Runebound

Avec Runebound, mon objectif était de concevoir un RPG roguelite ambitieux qui explore la dualité dimensionnelle au sein du gameplay pour mon cours de développement de jeu vidéo au Cégep de Rosemont. J'ai voulu créer une expérience narrative forte où l'évolution du mage se reflète non seulement par ses pouvoirs, mais aussi par la transition technologique du jeu. Ce projet m'a permis de pousser mes compétences sur Unity en gérant deux styles de jeu distincts au sein d'une seule et même boucle de progression.

décembre 2024

View All Projects