From pixel art sprites to photorealistic materials — generate pixel-perfect normal maps and complete PBR texture sets in seconds. No install. No upload. Just results.
PBR Forge is free during beta — and already the fastest way to generate PBR textures in your browser. If you encounter any issues, have feedback, or just want to say hi - .
PBR Texture Generator Overview
PBR Forge is the most powerful browser-based PBR texture generator for game developers, technical artists, and 3D creators. It uses WebGL 2.0 for real-time processing to generate normal, height, ambient occlusion (AO), roughness, metallic, emissive, opacity, and distance maps from your source image.
All processing is local in your browser. Your files are not uploaded to a server. If you are looking for an online normal map generator or a full PBR map generator, this workflow covers both.
Quick Start: Generate PBR Maps
Import: Drag and drop an image, click the file button, or use ⌘/Ctrl+O.
Choose Mode: Use Sprite for transparency/pixel art, or Texture for opaque and tileable materials. PBR Forge auto-detects the best mode for your image, and you can switch modes at any time.
Tune Surface: Start with Normal Intensity, then adjust bevel or frequency controls.
Preview and Export: Check map views or lit/3D preview, then export a normal map PNG or full PBR pack ZIP.
Works well for Unity, Unreal Engine, Godot, Blender, and custom engines that use physically based rendering (PBR) materials.
Processing Modes: Sprite vs Texture
Sprite Mode (Transparency-Based)
Uses signed distance fields (Jump Flood Algorithm) from alpha or luminance. Best for sprites, icons, UI elements, and clean bevels.
Texture Mode (Frequency-Based)
Uses frequency separation to extract height detail across scales. Best for photos, hand-painted textures, and tileable materials like stone, wood, fabric, or metal.
Canvas:⌘/Ctrl+Scroll zoom at cursor, scroll pans, click/drag light anchor in lit preview
Other:R toggle working/full resolution, / help, Esc close modal/panel
Core Controls for Normal and PBR Maps
Normal Intensity
Increases or reduces normal map depth. Raise it for stronger lighting response; lower it for subtle surfaces.
Bevel, Frequency, and Smoothing
Use Bevel Width in Sprite mode. In Texture mode, adjust low/medium/high frequency layers. Add light smoothing to reduce noise before normal generation.
Material Maps
AO adds cavity shadowing. Roughness controls matte vs glossy areas. Metallic separates metal vs dielectric surfaces. Emissive isolates glow regions. Opacity maps transparency.
Advanced Surface Controls
Normal Style changes gradient behavior. Edge Handling chooses clamp, tile, or mirror boundaries. Curve Power reshapes height falloff. AO Influence stylizes normals in occluded regions. Resolution Independent scaling keeps parameter behavior consistent across image sizes.
Export Normal and PBR Maps
Open Export with E to download either a single normal map PNG or a full PBR pack ZIP.
Engine preset: choose OpenGL (Y+) or DirectX (Y-) normal orientation to match your target engine and avoid inverted green-channel lighting.
Dithering: optional noise to reduce gradient banding.
Troubleshooting
Image was resized: This is expected when input exceeds WebGL texture limits. Full resolution is preserved for export.
Normal map looks flat: increase Normal Intensity, verify Sprite vs Texture mode, and check engine normal orientation.
Large image is slow: lower AO Samples, or use a smaller source image for faster iteration.
Sprite edges look wrong: ensure your source has a clean alpha channel, or switch to Texture mode for opaque images.
About & Privacy
PBR Forge is a WebGL 2.0 texture workflow tool built for fast, in-browser PBR map generation and preview. It supports multi-file workflows, real-time map previews, and on-device processing for privacy-first texture creation.