explaingit

zalo/full-spectrum

Analysis updated 2026-07-15 · repo last pushed 2026-05-07

1JavaScriptAudience · researcherComplexity · 3/5MaintainedSetup · easy

TLDR

A browser-based simulator that shows how a 3D model would look printed in full color using a limited set of translucent filaments, calculating which filament layers to stack to best reproduce the model's original colors.

Mindmap

mindmap
  root((repo))
    What it does
      Simulates color 3D printing
      Uses six filament colors
      Stacks translucent layers
      Exports PNG result
    How it works
      Treats filament as filters
      Perceptual color matching
      Error diffusion up layers
      Minimizes filament switching
    Use cases
      Test color print results
      Research printing algorithms
      Design filament systems
      Explore color possibilities
    Audience
      3D printing hobbyists
      Hardware makers
      Printing researchers
    Tech stack
      Browser-based static site
      No build step
      JavaScript
      Sample models included
    Customization
      Swap filament color values
      Adjust layer count slider
      Set height band count
      Drag in your own models
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Preview how a 3D model would look printed with a limited set of translucent colored filaments before actually printing it.

USE CASE 2

Experiment with different filament color palettes and layer counts to find the best color reproduction settings.

USE CASE 3

Research and develop new color 3D printing algorithms by adjusting error diffusion and layer stacking parameters.

USE CASE 4

Export the simulated color-mapped result as a PNG image to share or compare with actual print results.

What is it built with?

JavaScriptWebGLThree.jsHTML/CSS

How does it compare?

zalo/full-spectrumacip/slack-claude-agentalexanderdaly/neurofhe-relay
Stars111
LanguageJavaScriptJavaScriptJavaScript
Last pushed2026-05-07
MaintenanceMaintained
Setup difficultyeasymoderateeasy
Complexity3/53/52/5
Audienceresearcherdeveloperresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Static website with no build step, just open it in a browser or serve the folder locally.

No license information is provided, so default copyright restrictions apply and the code may not be freely used without contacting the author.

In plain English

Full Spectrum is a browser-based tool that simulates what a 3D-printed object would look like if you printed it in full color using a limited set of translucent filament colors. Instead of needing a specialized multi-material 3D printer to test color results, you upload a 3D model file and the simulator shows you how layering those filaments would reproduce the model's textures and colors. The project tackles a specific challenge: reproducing a wide range of colors from only six filament options (cyan, magenta, yellow, orange, violet, and black, plus a white base). It does this by treating each filament as a translucent filter that absorbs certain light wavelengths. The software calculates, for every point on the model's surface, which combination of filament layers to stack so the resulting color best matches the original. It uses a perceptual color-matching approach, meaning it prioritizes colors the way human eyes actually perceive differences. What makes this project notable is how it handles gradients and smooth color transitions while respecting how 3D printers actually work. Rather than just flattening colors into patches, it propagates color error upward along the print direction, simulating how a real printer would compensate layer by layer. It also ensures that neighboring areas with similar colors get the same filament sequence, so the print head isn't constantly switching materials mid-row. The primary users would be anyone working on multi-color FDM 3D printing, whether researchers developing printing algorithms, hardware makers designing filament systems, or hobbyists curious about what's theoretically possible with a limited filament palette. The simulator includes a few sample 3D models and lets you drag in your own, with sliders to adjust parameters like the maximum number of filament layers per spot or the number of height bands the model uses for error diffusion. You can export the processed result as a PNG image. The entire project runs as a static website with no build step, and the filament color values are kept in a single file so they can be swapped out for real measured values if you have them.

Copy-paste prompts

Prompt 1
I want to simulate full-color 3D printing with six translucent filament colors. Help me set up the Full Spectrum project locally and load a custom 3D model to see how the filament layer stacking reproduces my model's colors.
Prompt 2
I have measured RGB values for my actual filament spools. Show me how to update the filament color file in Full Spectrum so the simulator uses my real-world filament colors instead of the defaults.
Prompt 3
Help me understand the error diffusion algorithm in Full Spectrum and how it propagates color error upward along the print direction to improve color matching layer by layer.
Prompt 4
I want to tune Full Spectrum's sliders for maximum filament layers per spot and height band count. Walk me through what each parameter does and recommend settings for a model with smooth gradients.
Prompt 5
I cloned the Full Spectrum repo and want to run it. Since it has no build step, explain how to serve it locally and start dragging in my own 3D model files for simulation.

Frequently asked questions

What is full-spectrum?

A browser-based simulator that shows how a 3D model would look printed in full color using a limited set of translucent filaments, calculating which filament layers to stack to best reproduce the model's original colors.

What language is full-spectrum written in?

Mainly JavaScript. The stack also includes JavaScript, WebGL, Three.js.

Is full-spectrum actively maintained?

Maintained — commit in last 6 months (last push 2026-05-07).

What license does full-spectrum use?

No license information is provided, so default copyright restrictions apply and the code may not be freely used without contacting the author.

How hard is full-spectrum to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is full-spectrum for?

Mainly researcher.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.