// PORTFOLIO

SELECTED WORKS

Games, XR, rendering and AI systems. Each card links out to a playable demo or a repo — nothing is embedded here to keep this page fast.

★ Graphics Module

Rendering engine

★ Computer Vision & AI

In-browser ML

Conversational AI

Avatars & voice
Code

Convai Chatbot Web

A browser app connecting a Ready Player Me avatar to a live Convai character — text or voice in, TTS audio out, with real-time lipsync.

  • Convai Web SDK session with TTS and ARKit blendshape lipsync
  • React Three Fiber studio scene with the avatar GLB and lighting
  • ARKit frames bound to morph targets each frame; blinks layered locally
  • Idle animation retargeted onto the RPM skeleton
ReactThree.js ConvaiARKit Lipsync
View Repo ↗

Unity

Games & XR
Video

XR Chemistry Lab

A production-ready XR molecule builder for Unity + XR Interaction Toolkit, built with clean architecture and data-driven content.

  • Spawn/grab atoms, drop into bond zones, validate molecule recipes
  • Object pooling for repeated classroom interactions
  • ScriptableObject atom & molecule databases, dynamic UI
  • Localization (enum keys, XML export, runtime language switch)
  • Android / Quest voice narration (offline TTS)
UnityC# XR ToolkitTTS
Watch Demo ↗
Video

Carrom Board

A 2D Carrom game in Unity 6 with custom disc physics and a ScriptableObject-driven AI opponent.

  • Custom physics: velocity, friction, bounce, disc collisions
  • Accurate shot-prediction dots and queen cover/respawn rules
  • AI evaluates shot samples with weighted heuristics + thinking delay
  • Turn-based scoring with event-driven UI
Unity 6C# Custom Physics
Watch Demo ↗
Video

Angry Birds Clone

A 2D physics slingshot game in Unity 6 with a reusable bird-ability architecture (in active development).

  • Slingshot drag + launch, trajectory preview
  • Abstract BaseBird + IBirdAbility for new birds
  • Destructible wood/stone/glass blocks and TNT explosives
  • Event-driven bird lifecycle and modular sprite-atlas levels
Unity 6C# Rigidbody2D
Watch Demo ↗
Video

Item Jam

A tile/item matching game: pick items from a 3D stacked grid and clear triples before the tray runs out of space.

  • 3D layered board with click selection ordering
  • Triple-match removal and tray-capacity win/loss conditions
  • DOTween jump/scale animations into tray slots
  • ScriptableObject ID→prefab mapper and streak/timer UI
UnityC# DOTween
Watch Demo ↗
Video

Color Bus Sim

A color-based bus routing and passenger-transfer simulation with buses driving along spline paths.

  • Data-driven bus & passenger spawning from ScriptableObjects
  • Spline movement with acceleration/deceleration
  • Raycast obstacle avoidance between buses
  • Pickup/drop color-coded passengers and stop seeding
UnityC# Splines
Watch Demo ↗
Video

Sample Room

A room explorer combining a first-person controller, a top view and a per-object focus camera, driven by Cinemachine.

  • Three camera modes with a central state controller
  • Object selection and live material variant cycling
  • Cinemachine virtual-camera priority switching
  • WASD movement with smooth damping and clamped mouse look
UnityC# Cinemachine
Watch Demo ↗
Code

Clash Royale Prototype

A Clash Royale-inspired real-time card battler prototype built on SOLID principles and ScriptableObject unit configuration.

  • Elixir card deployment, deck UI and card cycling
  • Melee/ranged combat, projectiles, towers, retargeting, cooldowns
  • Air/ground targeting split with NavMesh + manual air movement
  • Unit pooling and an ability system for special cards
UnityC# NavMeshSOLID
View Repo ↗
Code

Snake Game AI

A 3D Snake where the head is driven by Unity NavMesh pathfinding to automatically chase food.

  • NavMeshAgent.SetDestination() chases the nearest food
  • Tail segments follow a stored head-position history
  • Food spawner validates locations and respawns on overlap
  • Score, game-over and restart flow
Unity 6C# AI Navigation
View Repo ↗
Code

Gravity Manipulation

A physics-based third-person controller with runtime, direction-based gravity, built on Rigidbody.

  • Gravity can be re-aimed at runtime; velocity realigns smoothly
  • Camera-relative movement and smooth character rotation
  • Jump opposite the gravity direction, preserving horizontal velocity
  • Sphere-cast ground detection and reduced air control
UnityC# Rigidbody
View Repo ↗

PixiJS

Web games
Live

Ludo Pixi

Fully interactive Ludo with a complete rules engine and a modular engine / rendering / systems / state architecture.

  • Safe tiles, captures, home-path rules, exact-roll entry
  • Dynamic piece stacking so overlapping tokens stay readable
  • GSAP tile-by-tile path animations, plus a developer cheat panel
PixiJS v8TypeScript GSAPVite
Play Demo ↗
Live

Bunny Snake

An arcade-style Snake game built with PixiJS v8 — help the bunny eat eggs to grow without hitting the walls or itself.

  • Orientation-aware sprites that rotate/flip to face movement
  • Toggleable wrap mode, pause/resume and instant reset
  • Responsive board that recenters and resizes with the window
PixiJS v8JavaScript Canvas
Play Demo ↗
Code

Slots PixiJS

A casino-style slot machine demonstrating scalable, SOLID game logic with server-driven outcomes.

  • 3×3 number reels stop at a pre-defined outcome matrix
  • Infinite-scroll illusion via array shifting (memory-efficient)
  • Game logic fully decoupled from presentation
PixiJS v8TypeScript SOLID
View Repo ↗
Template

Pixi React Template

A scalable PixiJS + React game architecture template: PixiJS renders gameplay, React drives the HUD.

  • Scene manager with Boot / Menu / Gameplay scenes
  • Event-bus communication and per-scene system controllers
  • Fixed-resolution setup with Capacitor Android build support
PixiJSReact TypeScriptCapacitor
View Repo ↗

Web / JavaScript

Browser & servers
Live

Hyper-Casual Games Platform

A modular vanilla-JS game platform with a unified menu system, built on HTML5 Canvas.

  • Three games: Snake, Runner and Bubble Popper
  • Pause / resume / restart across every game
  • Runner difficulty scaling and a Bubble Popper combo system
JavaScriptCanvas
Play Demo ↗
Code

Web Chat App

A React web chat application with a real-time messaging flow.

ReactJavaScript
View Repo ↗
Code

Chat Server (Node)

A Node.js chat server backing real-time messaging for web clients.

Node.jsWebSockets
View Repo ↗