Hands-on field guide · 10 July 2026

Can a renderer morph the whole game?

Yes. We installed three open-source systems, ran the same goblin through them, and traced where the transformation actually comes from.

Executed locally Real RTX GPU Same source goblin No renderer migration
Your intuition was right. A complete artistic render pipeline can put a new visual grammar across every pixel. It cannot, by itself, make every art decision good.
Goblin rendered through the tuned Malt NPR pipeline The same goblin rendered through Blender EEVEE EEVEE Malt NPR
Drag the imageSame scene · camera · mesh · palette · numeric lights

What the evidence provesA coordinated renderer can radically change the read of unchanged geometry.

What it does not proveThat any automatic filter will create the specific Forged by Sin style we want.

The terminology that caused the confusion

Four different things were all being called “renderer.”

They nest inside one another, but they do not have equal visual reach.

Rendering backend

WebGL, Vulkan, or another API submits work to the GPU. It is machinery, not an art direction.

Changing only this usually does not “morph” the game.

Render stage

One bounded mechanism: a surface shader, fog pass, outline detector, color grade, or shadow map.

It changes one family of decisions.

Artistic render pipeline

Surface response, depth and normal buffers, line language, shadow policy, atmosphere, exposure, and final compositing work as one law.

This is the thing you meant by “our renderer.”

Complete game look

The pipeline plus authored silhouettes, painted surfaces, semantic masks, animation, composition, world art, and camera.

This is what the player finally experiences.

01

Godot PSX stack

One stage versus the whole frame.

Godot 4.6.1 · Vulkan Forward+ · MenacingMecha demo @ 91bd249 · MIT

Goblin rendered through the complete Godot PSX stack Goblin rendered through standard Godot rendering Standard Full PSX stack
Same mesh, camera, light, floor, palette, and 960×720 output. The complete stack owns resolution, quantization, dither, upscale, scanlines, and finishing—not only the surface.
Controlled pair

The useful lesson is coverage, not PSX nostalgia.

The material-only middle arm changed 6.873% of pixels. The complete stack changed 100% because fullscreen processing participates in every output pixel.

That percentage is not a beauty score. A subtle dither can touch every pixel. It demonstrates how far the pipeline reaches.

Proves

A coordinated renderer can overwrite the presentation of the entire frame.

Does not prove

That PSX rendering belongs in Forged by Sin.

02

Malt artistic renderer

The clearest “different game” result.

Blender 5.1.2 · OpenGL · Malt @ b5ba805 · MIT · official ZIP hash verified

Configured mechanism proof

Ramp shading, line signals, and compositing act as one renderer.

The same geometry becomes flat, graphic comic 3D through a tuned diffuse ramp, shadow floor, line color, and depth/normal/object-ID contour system.

Important fairness note: Malt was hand-tuned for this goblin. EEVEE is severely darker because identical numeric lights do not produce perceptually matched exposure in different renderers. This is a transformation witness, not a fair beauty contest.

Proves

An artistic renderer can establish a comic visual grammar without changing the mesh.

Does not prove

That this technical “coloring-book” line treatment is our finished style.

Goblin in the configured Malt NPR renderer
The strongest successful mechanism witness—and visibly still a lab result. Line weights are too uniform, internal creases are indiscriminate, and there is no authored paint.
03

Three.js Mœbius pipeline

Closest to our stack. Weakest controlled picture.

Chrome 150 · WebGL2 / D3D11 · Maxime Heckel source @ 33f52b · code MIT

Goblin inserted into the extracted Three.js Mœbius post-processing scene
Runtime proof, not a target shot. The goblin is backpack-first and small; the sphere is clipped; the camera, composition, palette, and lighting differ from the other trials.
Stress result

The source anatomy is more valuable than this screenshot.

Scene colorDepth renderNormal + light-data renderDepth / normal Sobel edgesLine wobble + luma hatchingFinal composite

There is no palette, LUT, posterization, grain, or paper stage in this pass. The famous colors come from authored scene materials. The pipeline contributes edges, distortion, hatching, and the composite.

Proves

The line/hatch architecture runs in our browser and API family.

Does not prove

Why this goblin reads poorly; no same-view neutral control was captured.

The practical answer for Forged by Sin

Give the renderer global law. Give the artist semantic authority.

Sable’s comic read is not one outline switch. It is a cooperation between automatic renderer signals and authored information. Our Square Anon commitment makes the same split even more important: paint remains the form authority.

Renderer owns

The grammar shared by the whole world

  • Sky tint, exposure, and stable output color
  • Cast-shadow masking and raised shadow floor
  • Sky-coupled fog and distance atmosphere
  • Depth and normal edge signals
  • Distance-aware line width, color, and fade
  • Optional masked irregularity only after composition works

Authored art owns

The decisions that make the grammar intentional

  • Silhouette, proportion, and focal shape
  • Painted atlas, internal ink, wear, and material story
  • Semantic edge IDs and explicit line exclusions
  • Faces and tiny forms protected from blanket hatching
  • Animation pose language and held-frame rhythm
  • Foreground, midground, background, and camera composition

Proposed core purpose: turn authored low-poly fantasy worlds into a coherent, readable painterly-comic frame by enforcing global value, light, line, distance, and output laws—without repainting the artist’s work with a second directional form-light.

Studied systemWhat we keepDisposition
MaltMaterial-controlled line color/width masks; separate depth, normal, and object-ID signals.Study
Three.js MœbiusDepth/normal Sobel anatomy and bounded sampling irregularity, rebuilt directly for Three 0.184.Prototype
Godot PSX demoThe lesson that a coordinated fullscreen stack owns the whole presentation.Understand
Blanket hatch, hard bands, PSX treatmentNothing as a default style. These mechanism witnesses are not the project target.Reject

The next real progress point

Build one composed proof. Then stop for your eye.

The research question is settled. The style question is not. The next page must show our goblin in an actual Forged by Sin frame, with controlled ablations.

Neutral technical baseline

Fixed front-three-quarter camera, deterministic light, no post. No beauty claim.

Authored paint baseline

Preserve the painted atlas as form authority. Allow sky tint, exposure, atmosphere, and cast-shadow masking—but no second directional N·L reshading.

Compose the live frame first

Real foreground, midground, background, sky-coupled atmosphere, and a passing greyscale/two-value read.

Ablate renderer responsibilities

Identical-frame paint-dominant, line-only, and combined arms. One semantic inclusion and exclusion mask.

Prove distance and motion

Near/mid/far placement, camera dolly/orbit, temporal shimmer, GPU timing, allocation, and disposal checks.

Creative Director verdict

Present the controlled captures and stop. No editor or shipping-runtime migration before your call.

Evidence, limitations, and reproducibility

What was checked—and what remains unchecked.

Controlled witness and hardware

All accepted trials use the commissioned goblin GLB: four meshes, 6,140 triangles, SHA-256 96DF166216E28160C1554A80B6A84BFE900916F11AAC9EB43D9ADE2D45E6A8EC. Godot and Blender use deterministic texture-free proxy colors. Trials executed on an NVIDIA RTX 4070 Ti SUPER.

Limitations kept visible
  • The tracked guide does not include the Godot material-only middle image.
  • Malt is tuned; EEVEE is not perceptually exposure-matched.
  • The Three.js goblin has no same-camera neutral control and poor framing.
  • No common camera or exposure exists across all three renderers.
  • No trial measures production GPU cost, temporal stability, skinned crowds, or disposal.
  • Direct compatibility with Forged by Sin’s Three 0.184 runtime remains unverified.
  • These images prove mechanisms, not the final art direction.
Failed attempts retained

GDQuest outline conversions did not produce trustworthy target evidence. Malt background rendering lacked the required live GPU context. The original article Sandpack produced a black canvas; extracting the exact bundle into standalone Vite succeeded. Goo Engine was source-studied but not executed because no official public binary exists and compiling a full Blender fork was outside the bounded trial.