DEV Community

Mate Technologies
Mate Technologies

Posted on

Turning Images Into Game-Ready PBR Textures With Python (Offline, No Subscriptions)

Creating PBR (Physically Based Rendering) textures is a repetitive but unavoidable task in modern 3D, game development, and rendering pipelines. While there are powerful commercial tools available, many developers want something that is:

Offline

Scriptable or extensible

Free from subscriptions

Easy to integrate into existing workflows

That’s why I built PBR Texture Generator Pro — a lightweight desktop tool written in Python that converts regular images into full PBR texture sets in seconds.

The Problem With Traditional PBR Workflows

A single PBR material usually requires multiple maps:

Base Color

Normal

Height / Displacement

Roughness

Metallic

Ambient Occlusion

Generating these manually for large texture libraries or procedural workflows quickly becomes a bottleneck. Many popular tools also rely on cloud processing, accounts, or monthly payments — which isn’t ideal for CI pipelines, air-gapped machines, or internal studio tools.

A Python-First Approach

PBR Texture Generator Pro is built entirely with Python, using:

OpenCV for image processing

NumPy for fast numerical operations

Tkinter + ttkbootstrap for a clean GUI

OpenEXR for HDR texture export

Everything runs locally. No APIs. No external services.

How It Works (High Level)

At a high level, the tool follows a simple pipeline:

Load image(s) from disk

Convert to grayscale for map derivation

Generate maps using classic image processing techniques:

Sobel filters for normal maps

Gaussian blur and inversion for AO

Histogram equalization for roughness

Thresholding for metallic

Apply user-controlled strength parameters

Export results as PNG or EXR

Batch processing is handled safely, and jobs can be canceled at any time without freezing the UI.

Key Features Developers Care About

✔ Batch processing for folders

✔ Safe start / stop controls

✔ Sequential filenames (photogrammetry & pipelines)

✔ GPU acceleration via OpenCV when available

✔ EXR support for linear workflows

✔ Portable EXE — no installation required

✔ Full Python source code included

This makes it suitable for:

Internal tools

Educational projects

Indie studios

Research workflows

Seamless Tiling for Games

One feature I found essential for game development is seamless texture tiling.

The tool uses mirrored borders to prevent visible seams, making the output immediately usable in engines like Unreal Engine and Unity.

No post-processing needed.

EXE or Source Code — Your Choice

The project is available in three formats:

Windows EXE — instant usage, no Python required

Full Python source code — fully hackable

Bundle — both EXE and source

This flexibility makes it usable by both artists and engineers.

Why Not Just Use a Script?

You could write scripts for this — and many do. But when you need:

A clean UI

Batch safety

Error handling

Logging

Cross-team usability

A small, focused desktop tool often wins.

Get the Tool

If you’re interested in using or extending the tool, you can grab PBR Texture Generator Pro here:

👉 Gumroad:
https://gum.new/gum/cmk79c11p001u04jvfyqz3jbu

Final Thoughts

This project started as an internal utility and grew into a polished tool after repeated use in real workflows. If you’re working with textures regularly and want something you fully own and control, this might fit nicely into your toolkit.

If you have feature ideas or want to extend it further, the source version is intentionally open and readable.

PBR Texture Generator Pro

Top comments (0)