I'm Sarper Şoher, a game developer with over 20 years of experience, starting in the early 2000s.

CURRENT WORK

GAME ENGINE

This is a game engine I'm currently working on. The plan is to make 2.5D shmup games with it. Below you can find the current list of features.

Bespoke Editor

  • Game-embedded editor architecture.
  • Custom immediate-mode GUI with floating windows, menu bar, asset browsers, floating gizmos, and a context-aware status bar (based on raygui).
  • Debugging overlays and visualization modes (wireframe, normals, terrain texture array indices/weights, water flow map, etc.).

Renderer

  • Prev-gen diffuse, normal, specular materials with Blinn-Phong shading.
  • HDR rendering with Uchimura tone mapping.
  • Directional and hemispherical lights.
  • Poisson-disc filtered PCF shadow mapping.
  • Full post-processing chain.
  • Aspect ratio locking with letterboxing and pillarboxing.

Asset Database

  • Monotonic, non-reusable asset IDs.
  • Contiguous and cache-friendly asset storage.
  • Dense memory layout with zero fragmentation.
  • O(1) runtime asset lookup via hash tables.
  • Stable asset handles decoupled from memory addresses.
  • Per-asset metadata files.
  • Deterministic asset hashing and change detection.
  • Hot reloading with live dependency propagation.
  • Automatic thumbnail generation and caching.

Terrain

  • Triplanar rendering.
  • Sculpting tools: raise/lower, flatten, smooth.
  • Material painting with height-map blending.
  • Support for 256 materials per terrain using texture arrays.
  • Parametric texture bombing to eliminate perceivable tiling.

Water

  • Planar reflections, DuDv-based refraction, depth-based transparency, and shoreline wet shading.
  • Faux Quake-style wave animation.
  • Wind-driven wave animation.
  • Flow map-based animation.
  • Real-time flow map painting tools.

Foliage

  • Instanced rendering.
  • Shader-generated blade meshes with LOD and quadratic Bezier curve bending.
  • Noise-based wind animation on macro and per-blade scales.
  • Foliage painting tools.
  • Support for painting 256 foliage types in a single draw call.

Splines

  • Catmull Rom splines.
  • Uniform, chordal, centripetal parametrization.
  • Optional arc-length LUT generation for constant-speed traversal.
  • Custom spline asset format fully integrated into the asset database.
  • High-performance editor spline tooling.
  • Procedural mesh generation along splines with UV and width control (visualization, roads, etc.).

Culling

  • 2D sparse hash grid spatial partitioning for rendering, ray-cast queries, and collision detection.
  • Frustum culling with per-pass frustum padding.

Brush Engine

  • Adjustable size, falloff, and intensity.
  • Exponential moving average smoothing.
  • Rope stabilization.

Miscellaneous

  • Centralized wind settings affecting foliage, water, and sky animation.
  • Custom texture, spline, mesh and model file formats.
  • Shader hot reload, error detection, include directive.

PREVIOUS WORK

Backgammon Universe

Online multiplayer WebGL backgammon game with drop-in-drop-out multiplayer support with spectators and completely physics based dice.

Engine: Unity
Genre: Backgammon
Released: September 2024
Platforms: Discord (Desktop, Browser, Mobile)

Brick Breaker: Infinity

100+ hand crafted levels with infinite combinations, a new take on the classical brick breaker genre.

Engine: Unity
Genre: Brick Breaker
Released: Feb 2024
Platforms: Play Store | App Store

Last Bastion

Defeat the armies of Demon Iacobus with your rapid firing ballista and protect the Last Bastion!

Engine: Unity
Genre: Shooter/Castle Defense
Released: Nov 2021
Platforms: Steam | App Store | itch.io

Showreel 2009 - 2023

I've worked on many, many projects between these dates. I still have the source for most of them, but it would take weeks to prepare a showreel with those. So consider this item a todo/placeholder.

Software: Unity, Unreal Engine, Leadwerks, Blender, Adobe Photoshop, Affinity, Visual Studio, VSCode, Jetbrains Rider, Sublime Text, Substance Designer, Substance Painter, etc., etc.
Timespan: 2009 to 2023

Showreel 2005 - 2009

Some of the projects I developed while learning about game development during my adolescent years.

Software: Blitz3D, Wings3D, Blender, Adobe Photoshop, Fruity Loops, Visual Studio, C++
Timespan: 2005 to 2009