Graphics — Mohammad Abu Daqer

Computer Graphics & Visual Computing

C/C++, GPU, Rendering, Generative AI

mohammad.abu.daqer@gmail.com · Resume (PDF) · LinkedIn · GitHub · Instagram

DE1-SoC Pinball Engine

Computer Graphics

A fully from-scratch C implementation of a pinball game physics engine and renderer targeting the ARM-based Terasic DE1-SoC board. The game drives a VGA display, simulates rigid-body ball dynamics and collisions, and maps user input (flippers, launch) to hardware buttons, running in real time on an FPGA-backed HPS core. Demonstrated both on actual hardware and via the CPULator DE1-SoC simulator.

Embedded Systems & Low-Level Programming, Physics Simulation & Graphics Rendering, Performance Optimization, Toolchain & Debugging, Software Engineering Practices

Pixelmon Dream Generator

Generative Graphics

A DCGAN that learns from a curated Pokémon image dataset to synthesize entirely new, Pokémon-style creatures. End-to-end: data collection, preprocessing, model design, training loops, and qualitative evaluation in a clean Jupyter workflow.

DCGAN, Convolutional Networks, Image Preprocessing, Python/Jupyter, Git/GitHub

Real-Time Web Audio Instrument

Audio / DSP

Browser-based real-time audio instrument using the Web Audio API for low-latency signal processing and interactive sound generation. This sits beside graphics because it is another real-time creative computing system: input, signal, timing, feedback, and direct sensory response.

TypeScript, Web Audio API, DSP, low-latency signal processing, interactive sound generation

This Universe

Real-Time 3D / WebGL

The site you're in. A portfolio you fly through instead of scroll: two universes, a planet per discipline, a moon per project, and a hand-written GLSL shader for every planet type, sampled in object space so no sphere shows a seam. The hard part was the rift between universes. Swapping universes swaps the whole scene, and compiling its shaders stalls the WebGL thread, so the warp you ride through is DOM and CSS on the browser's compositor thread: it keeps moving while the GPU catches up, and the ride holds until every incoming shader has compiled.

Three.js, React Three Fiber, GLSL, Next.js, TypeScript, Web Audio API, Compositor-thread CSS