Overview

XVR img

Developed as part of the Master’s Degree in Computer Science, this project received a grade of 30L (highest distinction). Working in a team of two, we created several mini-games using XVR Developer Studio, an IDE for rapid prototyping of Virtual Reality applications using the S3D scripting language (C++-like syntax).


Project Duration and Skills

  • Development Time: 4 months
  • Skills Acquired:
    • OpenGL pipeline
    • Shader programming
    • Interactive graphics
    • Augmented Reality techniques
    • Particle systems (explosions, sparks)
    • Real-time texture handling

Technical Implementation

Core Architecture

  • Main script managing the framework loop
  • Root control with single active child (running game)
  • Menu and sub-game graphical controls
  • Independent demo control for each sub-game
  • Standalone tracking module (C++ DLL)
  • Scene abstraction and file loading
  • Minimal toolchain for scene descriptor generation

Graphics and Rendering

  • OpenGL rendering pipeline
  • Custom shader implementations:
    • Bloom effects
    • Outer glow
    • Glow effects
  • Real-time texture management
  • Particle system for special effects

Augmented Reality System

The AR implementation focused on displaying virtual 3D geometry overlaid on real markers (QR Code-like):

  • ArUco library for marker generation
  • Predefined absolute marker positioning
  • Real-world reference system creation
  • Webcam-based visualization
  • Third-person static view implementation

Mini-Games Collection

BombGame

A fast-paced multiplayer combat game where players control cars equipped with bomb launchers in a dynamic 3D arena. Features particle-based explosions and a physics system for vehicle and projectile interactions. A comprehensive UI displays health and ammunition status, while the main demo file (bomber.s3d) showcases the seamless integration with the AR environment.

TileGame

A strategic territory control game combining tactical thinking with fast-paced action. Players compete by driving over tiles in a dynamic checkerboard arena, changing their colors to claim territory. The game features a countdown timer and territory indicators, with special bonus items appearing randomly to enhance tactical gameplay.

Time Trial

A racing game featuring an intelligent AI opponent and XML-based circuit loading. The advanced AI system generates racing lines and adapts its behavior during races, while players track their progress through checkpoints. An intuitive interface displays race times, positions, and a strategic minimap.


Development Details

The project evolved from an initial concept using a webcam mounted on an RC car (first-person view) to a static third-person perspective due to performance considerations with rapid movement.

Key implementation features:

  • ActiveX component support for IE browser
  • Modular code architecture
  • Scene management system
  • Real-time marker tracking
  • Multi-player support