If you apply a poorly crafted physically based material to a mesh with perfect geometry, the asset will look cheap—regardless of polycount and UV quality. And vice versa: a well-made material can elevate modest geometry to a convincing result. Texturing and PBR material assembly account for half of the final asset quality. We offer professional 3D model texturing and PBR material creation for any engine—Unity, Unreal Engine, Godot. With over 10 years of experience and 50+ game development projects, from mobile to console, we deliver physically correct, optimized materials. Contact us for a consultation on your project. For example, texturing a single prop starts at $300.
Why Correct PBR Composition Is Critical
The most common mistake—incorrect metallic and roughness values as the material base. This isn't a matter of taste; it's physically invalid data. A metal with metallic = 0.5 does not exist in nature: a surface either conducts or doesn't. The metallic map should be nearly binary—0 for dielectrics, 0.9–1.0 for metals. Exceptions are transition zones at edges (corrosion, dirt) where metallic can take intermediate values, but only for masking the transition, not as the main value.
Roughness is a different story. The range is wider, but artists tend to undervalue it, making all surfaces glossier than they should be. Polished steel: roughness 0.15–0.25, not zero. Matte paint: 0.75–0.85. Raw stone: 0.85–0.95. References from Quixel Megascans are invaluable here—they provide physically calibrated values for hundreds of materials. Our team guarantees physical correctness for every material using licensed tools and cross-referencing with official engine specs.
The second error zone is the Albedo map. In a physically based rendering pipeline, albedo must not contain lighting information. No shadows, no ambient occlusion imprints in albedo. This breaks physical correctness: the engine calculates lighting itself, and baked shadows create double occlusion—the surface looks dirty under any light. AO is baked separately and fed into the appropriate material channel. In Unity HDRP, that's the G channel of the mask texture in Lit Shader (packed: metallic R, AO G, detail mask B, smoothness A).
Our Tools and Pipeline for Texturing
Our primary production tool is Substance Painter. Since version 8.3, it supports real-time 8K textures on modern GPUs, critical for hero assets. Key features used on every project:
- Smart Materials as a base—not for final output, but as a starting point with physically correct values. Then we add custom layers with Generator masks (Position, Curvature, AO). The Curvature Generator provides edge wear automatically in the right places; the AO Generator accumulates dirt in crevices. This isn't "press a button and it's done"—these tools require fine-tuning Bias and Intensity for the specific mesh.
- Baking pipeline inside Substance Painter: Normal, AO, Curvature, Position, ID Maps from high-poly or via mesh maps. Configuring Baker Groups for characters with overlapping geometry is mandatory. Without Baker Groups, an arm overlapping the torso in T-pose will produce false AO on the torso.
For procedural materials and tileable textures, we use Substance Designer. This is a different tool with a different logic: a node graph instead of layers. The result is a texture whose parameters can be changed without manual repainting. Useful for environments requiring material variations: wet asphalt / dry asphalt / cracked asphalt—one graph with three control parameters.
Quixel Mixer fills an intermediate niche—quick blending of Megascans materials with masking by slope, curvature, or vertex paint. For environmental assets in Unreal Engine 5, this is often faster than Substance Painter due to native integration.
Over 10 years, we've tried all major tools and choose the optimal pipeline for each task type. Our services cover all aspects of game art, including 3D modeling, PBR textures, and game materials for game development textures. Contact us—we'll help determine the best approach.
What's Included in the Work
- UV layout analysis and texel density check
- UV error fixing (seams, flipped islands, inconsistency)
- Map baking (Normal, AO, Curvature, Position, ID Map)
- Full PBR texture set creation (albedo, normal, metallic, roughness, AO, height/parallax)
- Subsurface scattering (SSS) setup for organic materials
- Texture export for target engine (Unity, Unreal, Godot)
- Texture optimization for given FPS budget and platform
- Material documentation and visual setup recommendations
Process and Timelines
| Stage |
Duration |
| UV review and rework |
0.5–1 day |
| Map baking (Normal, AO, Curvature, Position) |
0.5–1 day |
| Texture creation |
2–7 days |
| In-engine testing |
0.5–1 day |
| Revisions and export |
0.5–1 day |
| Task Scale |
Estimated Time |
| Single prop (1–2 materials, 1 UV set) |
1–3 days |
| Weapon/vehicle asset (3–5 materials) |
3–7 days |
| Character (body + clothing + accessories, 5–10 UV sets) |
7–20 days |
| Environment/prop set (20+ assets) |
3–8 weeks |
The process begins with reviewing the mesh and UV layout—before texturing, we ensure consistent texel density across all assets, proper seam placement, and no inverted UV islands. If the layout needs improvement, it's handled separately.
Cost is determined after analyzing the technical specification: number of assets, target texture resolution, engine, and rendering pipeline. We guarantee transparent pricing and lock the budget before work begins.
Typical UV and Texture Errors We Fix
- Inverted UV islands: Easily missed but cause flipped normal maps. We catch them early in the bake phase.
-
Texel density mismatch: When different parts of the same asset have varying resolution, creating visible quality differences. We standardize to a target texel density.
-
Seam placement on visible areas: Seams should hide in crevices or along hard edges. We reposition them if needed.
-
Overlapping UVs: Common in complex props; we separate islands to avoid baked lighting artifacts.
-
Incorrect material ID maps: Essential for masking in Substance Painter; we generate clean ID maps from the high-poly model.
Request a project evaluation—send us your task description. We'll respond within one business day with a scope and estimate.
Texturing and Materials
An artist sends an asset to the engine — and it looks like a plastic toy. We've seen this dozens of times: correct geometry, good UV unwrapping, but the material doesn't "play". In 90% of cases, the reason is a misunderstanding of PBR channels. Over 10+ years working on mobile and PC projects, we've developed a pipeline that guarantees predictable results in any lighting. Texturing for modern games involves physically based materials, procedural systems, and a strict FPS budget. Our experience includes over 50 completed game projects — from indie to AAA. Contact us — let's discuss which texturing pipeline best suits your project with PBR materials for games.
Why are PBR materials the standard for modern games?
PBR (Physically Based Rendering) is not an artistic style but a set of rules that make materials behave physically predictably under any lighting. In Unity (URP/HDRP) and Unreal, this is the default standard. Using PBR reduces rework time by 30%: a material baked correctly does not require re-tuning when the environment changes. In contrast to legacy approaches, PBR provides consistency across the team — artists and engineers speak the same channel language.
What is included in the PBR pipeline: Metal/Roughness vs Specular/Glossiness
Two main workflows:
-
Metal/Roughness (used in Unity URP, Unreal): Base Color — diffuse color without lighting information. Metallic — binary map: 0 (dielectric) or 1 (metal). Roughness — 0 mirror surface, 1 matte. Normal Map — relief simulation. AO (Ambient Occlusion) — darkening in crevices.
- Specular/Glossiness — older workflow, used less often, mainly in legacy projects or when converting from Photoshop.
Boundary values for dielectrics: base color not darker than #383838 and not lighter than #E0E0E0 — otherwise the material starts to "glow" or "sink" into darkness under HDR lighting. For metals, base color = reflection color (gold — warm, chrome — neutral).
— from Unreal Engine documentation: "PBR is the only way to get predictable reflections on all platforms."
How does Substance Designer speed up the creation of tiling materials?
If Substance Painter is manual painting on finished geometry, Substance Designer is programming a material. The node graph outputs a set of texture maps that are generated algorithmically. Designer is 5 times faster than manual texturing when reused: one graph with parameters — stone size, gap, mossiness, wetness — gives hundreds of variations. Instead of painting a 2K texture by hand, the artist builds a graph that can:
- Be parameterized — one "stone wall" graph with sliders: stone size, gap, mossiness, wetness.
- Be scaled without quality loss — rendering at any resolution (2K → 4K for cinematic).
Building blocks of the Designer graph:
- Shape nodes — geometric primitives (rectangle, circle, polygon). Basis for tiling patterns.
- Noise nodes (Perlin, Gaussian, Cells, Voronoi) — organic irregularities.
- Tile Generator / Splatter — key nodes for creating patterns with control over offset, rotation, scale.
- Warp nodes — deformation by normal map or gradient (drips, shifts, cracks).
- Blend — layer blending with masking (final compositing).
- Normal Map nodes — synthesis of normals from height data.
Typical graph for "industrial metal" material:
[Shape: rectangular panel]
↓
[Tile Generator: grid of panels with small offset]
↓
[Warp: micro-dents from Gaussian noise]
↓
[Blend: add curvature mask → rust on edges]
↓
[Blend: drips by Directional Warp]
↓
[Export: BaseColor / Metallic / Roughness / Normal / AO]
Such a graph is reused across different projects without rework when resolution changes. One graph saves up to 40% of time on repetitive textures.
How to avoid performance loss when working with textures?
The main mistake is overestimated texture resolution and wrong compression format. Comparison table by platform:
| Platform |
Max texture for hero asset |
Compression format |
Size relative to PNG |
| Mobile (mid-range) |
1K–2K |
ETC2 / ASTC |
4–8 times smaller |
| PC / Console |
2K–4K |
BC1–BC7 |
4 times smaller |
| VR |
1K–2K |
ASTC (mandatory) |
4–8 times smaller |
Never export PNG to production without compression — it's a direct memory waste. BC7 for RGBA gives good quality at 8 bpp. ASTC for mobile is adjustable by quality/size ratio. Additional tool comparison table:
| Tool |
Speed |
Flexibility |
Reusability |
| Substance Designer |
3-5 days per tile |
Maximum (parameters) |
100% for different projects |
| Substance Painter |
2-3 days per hero asset |
Medium (manual touch-up) |
~70% via Smart Materials |
| Quixel Mixer |
1-2 days |
Limited by Megascans library |
Depends on project |
Work process: from reference to integration
- Analysis of references and reference geometry — determine PBR channels, style, platform constraints.
- UV unwrapping and baking — bake AO, Normal, Curvature, Thickness considering texel density.
- Texturing — Painter for hero, Designer for tiles, hand-painted if needed.
- Export and optimization — compress to target format, atlas, LOD textures, test on target platform.
- Support during integration — set up materials in engine, debug lighting issues.
Checklist of common mistakes
- Base Color contains fake shadows → breaks dynamic lighting.
- Normal Map in sRGB space → inverted normals.
- AO and Curvature not baked → Smart Materials work incorrectly.
- Texture resolution higher than necessary → FPS drop and extra VRAM.
- Compression format chosen without considering alpha channel (BC1 vs BC7).
What is included in our work and quality guarantees?
- Deliverables: PBR texture sets (Base Color, Metallic, Roughness, Normal, AO) for Metal/Roughness workflow, parametric Substance Designer graph (if required), full documentation for material setup in Unity/Unreal, support during integration with testing on target platform.
- Guarantee: every material is tested in the engine under three different lighting conditions. Our experience — 10+ years, 50+ projects, including projects with AR Foundation and XR Interaction Toolkit.
- Timeframe: 3 to 14 days depending on complexity (one tiling material in Designer — 3–5 days, hero asset with UDIM — up to 14 days). Cost is calculated individually.
Order texturing of your asset — we guarantee predictable results without rework. Get a consultation on the right pipeline today.