Batuhan Dev

Batuhan Dev

Senior Software Engineer & Senior Technical Artist

Driven by visual fidelity, technical artistry, and efficient workflows.

Driven by visual fidelity, technical artistry, and efficient workflows.

I build cutting-edge visuals and pipelines for the next generation of real-time experiences.

I build cutting-edge visuals and pipelines for the next generation of real-time experiences.

Advanced Real-time Water Shader (Amplify) - Unity

The Challenge Delivering cinematic toon water visuals (depth, foam, caustics, reflection) within a strict single-pass performance budget. The goal was to eliminate the trade-off between visual fidelity and GPU overhead.

The Solution Developed a modular shader that prioritizes mathematical efficiency over expensive rendering passes:

  • Depth-Driven Coloring: Interpolated shallow/deep gradients using a custom depth-fade logic.

  • Procedural Foam: Integrated screen-space depth comparison for dynamic, object-aware intersection foam.

  • Cheap Refraction: Authored a light-clipping mask to simulate caustics, bypassing the need for costly real-time light calculations.

The Priority & Outcome Focused on artist-friendly tweakability and technical scalability. Achieved a production-ready system with 25% less GPU overhead than standard transparency-heavy solutions.

Mobile Friendly Stylized Toon Water Shader - Unity

Challenge: Achieving a sharp "toon" aesthetic with reactive foam and waves without expensive physics simulations.

Logic & Approach: Custom HLSL utilizing the Depth Buffer for proximity-based effects:

  • Depth-Driven FX: Procedural color grading and noise-distorted intersection foam via screen-space depth.

  • Surface Motion: Efficient real-time vertex displacement using sine-wave functions.

  • Scalability: Modular multi_compile architecture to toggle AA and high-end effects across platforms.

Outcome: High-performance, production-ready visual with zero physics overhead.

Arcane Burst - Character VFX - Unity

Technical Breakdown

  • The Challenge: Designing a multi-layered character ability that requires synchronized motion, organic dissolves, and complex distortions. The goal was to avoid using multiple simple shaders and instead create a single, highly flexible "Master Shader" that could handle all VFX elements—from energy petals to sparkles—efficiently.

  • The Solution: I developed a comprehensive "All-in-One" VFX Shader in Unity to serve as the foundation for the entire effect. This shader integrates advanced features like dual-layer texture panning, Fresnel-based transparency, and dynamic UV distortion. To achieve the specific energy silhouettes, I modeled custom meshes in 3ds Max, ensuring optimized UV layouts for smooth texture flow along the geometry.

  • Key Technical Features:

    • Dynamic Distortion : Implemented a secondary noise-driven UV distortion layer to create the "energy ripple" effect, adding a sense of heat and power to the core burst.

    • Custom Geometry: Designed specialized meshes in 3ds Max to provide unique shapes (like the energy petals), allowing for more artistic control than standard particle primitives.

    • Multi-Phase Dissolve System: Developed a noise-based dissolve logic within the shader to manage the smooth dissipation of the effect, synchronized with the particle lifetime.

    • Vertex Offset & Pulse: Integrated vertex-space manipulation to add procedural "pulses" to the meshes, giving the energy forms a more organic, living feel.

  • The Outcome: A high-impact, polished character VFX that is both visually rich and performance-optimized. The Master Shader significantly reduced material overhead and allowed for rapid visual iterations directly within the Unity Inspector.

Dynamic Liquid Sprite Shader (Honey Effect)

Technical Breakdown

  • The Challenge: Creating a viscous, "oozing" honey effect for a 2D environment that feels alive without the heavy performance cost of traditional physics simulations. The effect needed to be easily tweakable for different levels of "wiggle" and liquid intensity.

  • The Solution: I developed a custom LiquidWiggleSprite shader in HLSL for Unity's Universal Render Pipeline (URP). This shader uses a dual-masking approach to achieve complex UV distortion: a local DistortionMask for fine control over which parts of the sprite move, and a panned DistortionScreenMask to create a continuous, global flowing motion.

  • Key Technical Features:

    • Dual-Layer UV Distortion: Combines a local sprite mask with a screen-space panner to simulate a rolling, viscous liquid motion.

    • Wiggle Controllers: Exposed parameters for Global Strength, Direction (X/Y), and Intensity, allowing artists to fine-tune the "thickness" and flow speed of the honey in real-time.

    • Sprite Atlas Support: Integrated tile count variables (_PackedSpriteTileX/Y) to ensure the distortion scales correctly when using packed sprite sheets.

    • Screen-Space Logic: Utilizes ComputeScreenPos to ensure the liquid distortion feels consistent relative to the player's view, enhancing the immersive "submerged" or "flowing" feel of the honey tiles.

  • The Outcome: A highly optimized and visually satisfying honey effect that provides the tactile feel of a viscous fluid while maintaining the sharp clarity of the game's stylized art direction.

Stylized Ballistics & Impact VFX

Technical Breakdown

  • The Challenge: Creating a punchy, satisfying combat impact that adheres to a strict hand-drawn, stylized aesthetic while maintaining high real-time performance. Standard particle physics alone often fail to capture the specific "snappy" timing required for cartoon explosions.

  • The Solution: Adopted a hybrid workflow combining real-time engine particle systems with pre-rendered elements. I utilized Effects to hand-craft complex explosion timings and shapes, exporting them as optimized flipbook textures (spritesheets). This approach allowed for complex, fluid animation data to be played back efficiently on simple particle quads.

  • Key Technical Features:

    • Custom AE Flipbooks: Authored two distinct 2D explosion sequences in After Effects—the initial high-energy flash and the lingering stylized smoke clouds—ensuring precise control over the animation curve and silhouette.

    • Hand-Painted Textures: All graphical assets, including the projectile trail ribbons, sparks, and smoke diffuse maps, were custom-painted to ensure a cohesive artistic direction.

    • Projectile Trail System: Utilized a ribbon renderer with custom scrolling noise textures to create a dynamic, energetic trail that follows the projectile's trajectory.

    • Impact Force: Implemented a brief refractive shockwave ring (distortion shader) upon impact to visually sell the concussive force of the explosion.

  • The Outcome: A visually dynamic and highly optimized VFX sequence that seamlessly blends hand-crafted 2D animation principles with 3D real-time environments.

Custom Match-3 Level Design Tool

Technical Breakdown

  • The Challenge: Streamlining the level design workflow for a complex Match-3 puzzle game. Designers needed a robust, user-friendly interface to manage thousands of level configurations, spawn rules, and goal conditions without modifying raw data files or code.

  • The Solution: Developed a comprehensive Custom Level Editor within Unity using Editor Scripting (IMGUI/EditorWindow). This tool serves as a visual bridge, allowing designers to "paint" levels and configure game logic in real-time, which then serializes directly into the game's data structures.

  • Key Technical Features:

    • Visual Grid Painter: Implemented a "brush" system that allows designers to select items from a palette (Basic Items, Special Items, Modifiers) and paint them directly onto the level grid.

    • Data-Driven Spawn Rules: Integrated a dynamic spawn logic interface where designers can define percentage-based spawn rates for different item types, ensuring balanced gameplay.

    • Global Level Configuration: Exposed core parameters such as Move Count, Grid Dimensions (Width/Height), and RNG Seed values for precise control over level difficulty.

    • Goal & Requirement Management: Built a dedicated system to define win/loss conditions and specific level goals (e.g., collecting specific item types) within the editor.

    • Save/Load Workflow: Robust serialization system for local and online level management, allowing for instant testing and iteration.

  • The Outcome: Successfully reduced level creation and iteration time by approximately 70%, enabling the design team to prototype and balance hundreds of levels efficiently.

High-Performance Vertex Painter

Challenge: Processing mesh data in Python is typically slow. Looping through thousands of vertices to apply colors based on spatial coordinates creates significant lag in Blender.

Logic & Solution: Developed a NumPy-powered script for instantaneous vertex color application based on World-Z positions:

  • Vectorized Processing: Leveraged NumPy to bypass slow Python loops, performing batch mathematical operations on vertex arrays.

  • Matrix Multiplication: Calculated world-space coordinates via vectorized matrix transforms for accurate spatial mapping.

  • Automated Normalization: Implemented instant Z-clamping (0.0 to 1.0) across the entire mesh for procedural masking.

Outcome: Achieved near-instant execution on high-poly models, drastically accelerating procedural asset preparation for game engine pipelines.

Ethereal Soul Bind | Spectral Ability VFX - Unfinished

Challenge: Creating a fluid, non-linear energy link that follows a specific geometric path while maintaining frame-perfect synchronization with character animations. Standard particle ribbons lacked the artistic control needed for this spectral "binding" effect.

Logic & Solution: Leveraged Custom Meshes driven by Unity’s Particle System using Custom Vertex Streams. By passing per-particle data (like normalized lifetime) directly into the All-in-One Master Shader, I achieved precise control over texture distortion and growth along the mesh’s UV space.

Key Technical Features:

  • Vertex Stream Integration: Utilized custom data streams to drive procedural animation on the mesh, allowing the energy to "morph" and "flow" based on particle life.

  • Master Shader Versatility: Employed a single material pass to handle multi-layered panning, Fresnel-based glow, and UV distortion for a complex spectral look.

  • Timeline Synchronization: Integrated the effect within Unity Timeline, ensuring the VFX triggers perfectly align with the character's skill animation frames.

  • Optimized Geometry: Designed custom trail meshes to define the energy's silhouette, maintaining high visual fidelity with minimal draw calls and particle counts.

Outcome: A high-impact, performance-optimized ability effect with total artistic control over energy flow, significantly reducing the need for heavy procedural calculations.

Create a free website with Framer, the website builder loved by startups, designers and agencies.