About Me

Game designer and Unity developer with 5+ years of experience across multiple genres and platforms. Years of rapid prototyping gave me deep hands-on experience designing and implementing complex systems from scratch — from custom physics to GPU-side optimizations. Now focused on PC & console development with Unity DOTS/ECS.

"I don't just design mechanics — I engineer them from the ground up."
Current Focus

PC & Console Development

Unity DOTS/ECS • Systems Design • Technical Gameplay

Technical Highlights — click to expand

Projects

Wanted Curve Bullet

C# Physics Unity
⏱ 3 Weeks
🎯
Polynomial Trajectory Custom quadratic solver
💡
Segmented Raycasting No tunneling, frame-accurate
Zero Physics Overhead Pure math, no rigidbodies
Goal Replicate the iconic "Wanted" cinematic experience, giving players high agency over projectile ballistics.
  • Juice & Feel: Developed a tactile input system where the player "pulls" the trajectory with delta-input, creating a high-skill ceiling for corner shots.
  • Visual Communication: Real-time predictive UI — trajectory line switches to "Warning Red" on obstacle intersection before committing to the shot.
  • Combat Flow: Slow-motion "Bullet-Cam" follows the curve, emphasizing weight and hit satisfaction.
Polynomial Solver

Custom trajectory using quadratic function logic:

f(i) = (midpoint)² - (i - midpoint)²

Curve anchored at gun and target with smooth symmetrical offsets.

The Problem

Standard physics updates or OverlapSphere checks miss thin colliders (Tunneling).

The Solve

Implemented Segmented Raycasting — discrete Raycasts between each shootingLinePositions[i] and shootingLinePositions[i+1].

60+ Line Segments Real-time trajectory
0 Rigidbodies No physics overhead
1 Frame Collision Frame-accurate
Technical Gameplay Designer
  • Performance: 60+ line segments with zero frame-drops on mobile.
  • Game Feel: Balanced "Aim Assist" — rewarding, not automated.
  • Modular Architecture: "Ballistics Controller" lets designers swap polynomial formulas without rewriting physics.

Clean Energy

Lighting Decals Optimization
⏱ 3 Weeks
💡
Decal Shadow Casting Fake lighting via dark textures
📉
80% Build Size Cut No redundant lightmap sets
Zero Lighting Overhead SetActive toggle only
Goal Create a satisfying "Electrician" fantasy centered on recycling and restoration.
  • Visual Feedback: High-contrast lighting loop where player progression is visible through illumination of darkened city districts.
  • Engagement Loop: Balanced cable-creation economy to reward efficient pathfinding — city rehabilitation feels earned.
  • Impact: Hit-stops and subtle camera shakes during cable connection for tactile "powering up" feel.
The Constraint

Real-time lighting for multiple city blocks exceeded mobile GPU budgets. Lightmap switching rejected — ~300% build size increase.

The Solve

Developed Decal-Based Shadow Casting. Projected large black textures via decals to simulate "unpowered" states.

80% Build Size Reduced vs. lightmap sets
0ms Lighting Overhead SetActive toggle
60 FPS Stable Mid-range mobile
Lead Technical & Gameplay Designer
  • Technical Achievement: Mobile-first environmental lighting at steady 60 FPS on mid-range devices.
  • Project Outcome: Shipped performant hybrid-casual loop balancing constraints with visual fidelity.
  • Growth: Solidified philosophy of creative "hacks" for AAA-style feedback on limited hardware.

Parkour Movement

Level Design Mechanics Physics
⏱ 3 Weeks
🏃
Fluid Movement Wall-run, slide, vault, momentum
🎬
30+ Anim States Velocity-driven blend trees
📐
Modular Toolkit Snap-together level pieces
  • Designed fluid movement system with wall-running, sliding, vaulting, and momentum-based mechanics.
  • Built animation state machine with 30+ transitions and blending.
  • Created level design toolkit with modular pieces for rapid prototyping.
  • Implemented Cinemachine camera system that enhances movement feel.
  • Movement described as "buttery smooth" by playtesters.
  • Created 8 parkour courses with speedrun timers and leaderboards.
  • Achieved sub-frame input latency for responsive controls.
  • Wall detection: Raycasts missed curved surfaces. Implemented multi-ray fan detection with surface normal averaging.
  • Animation blending: Transitions looked jerky. Used custom blend trees with velocity-driven weights.
  • Camera motion sickness: Fast movement caused nausea. Added FOV easing and motion blur controls.