12 Jan 2026

How to preview full-color 3D printouts with photorealistic accuracy

featured image

Printing on a PolyJet 3D printer with colors, the result often looks different than the digital 3D model, depending on texture, thickness, and illumination. We explain how to create an accurate, photorealistic preview of the model so you can softproof your design before you print it.

Original textures vs. real printouts

You have surely noticed that when you load a textured 3D object into a slicer software and then you print it, the printout almost never looks like on the computer screen. The most noticeable differences are:

Let’s have a look at a few examples we printed on Stratasys J750 using Vero Vivid (Cyan, Magenta, Yellow), BlackPlus and PureWhite materials.

Texture details

Below are two textured slabs, each 5 mm (0.2 in) thick and 56x42 mm (2.2x1.7 in) wide. The slabs are textured with paintings of Vincent van Gogh (“Wheat Field with Cypresses”) and of Paul Gauguin (“The Siesta”). Below, you can see how the original textures are visualized on the models:

Two flat 3D models with van Gogh's 'Wheat Field with Cypresses' and Gaugin's 'The Siesta' paintings as textures.
Figure: Two slabs with textures loaded in PrismSlicer

When we actually print the objects and take photographs of the printouts, we will see the following:

Photographs of two full-colour 3D printed slabs with paintings as textures demonstrating the color fidelity.
Figure: Photographs of the two 3D printed slabs from above

At first glance, the printouts are correct, but are they really? Look how much contrast and texture detail was lost during the printing process:

A scientific comparison between three cutouts of the target texture (paintings) with photographs of the 3D printed reproduction.
Figure: Comparing closeups between the target texture and the photographed printouts shows a loss in contrast, significant blurring and inherent loss of texture detail.

Translucency

As another example, we demonstrate translucency. You might have already noticed that when a very thin object is printed, it becomes partially transparent.

A comparison between target textures (a bunny and a peacock) and photos of thin printouts against a black and white background demonstrating the translucency.
Figure: We can clearly see the background through the 0.25 mm (0.01 in) thin printouts.

In standard 3D printing software, it is impossible to visualize these effects. That is why in the next steps, we will use PrismSlicer, which has a photorealistic preview functionality.

Step 1: Importing objects to PrismSlicer

To create photorealistic previews, we will use PrismSlicer by Additive Appearance. The software is compatible with Microsoft Windows, Apple Mac OS, and also major Linux distributions such as Ubuntu.

When you download the software, it comes preconfigured for Stratasys PolyJet printers with accurate color calibrations for standard Stratasys resins, including Vero Opaque (Cyan, Magenta, Yellow), Vero Vivid (Cyan, Magenta, Yellow), BlackPlus, PureWhite, UltraBlack, UltraWhite, VeroClear, and with the possibility to request calibrations for other resins as well.

A screenshot of PrismSlicer where a 3D model is loaded via drag and drop.
Figure: Upon starting the software, we will see a real-time visualization of a printbed. We can then import our objects by either using the “Load models” button in the top-left corner, or by simply dragging & dropping the files onto the window. The software supports common 3D formats such as .obj with .png textures.
A screenshot of PrismSlicer with the Transform section highlighted and showing a model with a gizmo for scaling.
Figure: The objects can be moved, scaled, and rotated, similarly to other 3D printing software, using either on-screen gizmos, the respective buttons in the toolbar, or by typing the target dimensions into the right "Transform" panel.

You can also import multiple 3D objects and place them anywhere on the virtual printbed:

A screenshot of PrismSlicer with 3D models of a female figurine, a human eyeball and a painting (The Siesta from Gaugin) on the printbed.
Figure:

Multiple 3D models loaded onto the virtual printbed of PrismSlicer.
Models: “Full body 3D scan” by fablabbudapest and “Realistic Human Eye” by Alexander Antipov

Step 2: Automatic slicing

Before we move on to the photorealistic previews, let’s examine how slicing works in PrismSlicer. Slicing is the process of converting the model into a material grid, in other words, into instructions for the PolyJet printer. In the “Slice” tab, the model is automatically sliced layer by layer, and each layer consists of tiny droplets of individual resins (for example cyan, magenta, yellow, black, and white — abbreviated as CMYKW). In software such as GrabCAD Print, you cannot visualize the slices, but you can do so in PrismSlicer.

The slice tab in PrismSlicer showing CMYKW material assignments for each voxel in the layer selected by the vertical slider.
Figure: Using the slice visualization in PrismSlicer, we can examine the result of the slicing algorithm before printing. It represents exactly the instructions that the printer executes and allows for pin-pointing to a software or hardware problem in case of failed print. This is especially useful to ensure correct slicing of complex assembly models, where the overlapping areas can easily be mixed up.

Step 3: Photorealistic preview in PrismSlicer

The slices that were created in the previous step can now be photorealistically previewed in the “Preview” tab of PrismSlicer. For starters, let’s try to preview a single model, “The Siesta” painting by Paul Gauguin from above.

A screenshot of PrismSlicer's Preview tab with the 'Render preview' button highlighted and showing the preview settings.
Figure:

The Preview tab in PrismSlicer allows for adjusting preview settings such as camera field-of-view (FoV), sample count (spp), and image resolution.

When we click on the “Render preview” button, a new window opens where the preview will be iteratively rendered: the image will keep getting updated until it reaches the final state (depending on the “Sample count”, where higher number means longer rendering).

A photorealistic preview of a PolyJet 3D printout showing Gaugin's The Siesta painting.
Figure: The photorealistic preview image is opened in PrismSlicer's image viewer window. It exhibits exactly how the environment light (here a completely white surrounding) is reflected and absorbed by the resins. The printer's color distortion and loss of texture details are faithfully represented by the physically-based simulation.

The rendering can take a few seconds but also a few minutes depending on the complexity of the model, the performance of your computer, and so on. We recommend that you first start with smaller objects to test how your computer performs.

In PrismSlicer, you can also render multiple objects at the same time. For example, let’s render “The Siesta” together with the thin bunny slab and a few black and white slabs. We can move the objects around to assemble our scene and then click “Render preview” again:

A complex assembly of models in front of black and white background slabs in PrismSlicer's Preview tab.A photorealistic preview of a complex assembly of PolyJet 3D printouts.
Figure: Placing the black and white background into the preview scene exhibits the same translucency of the 3D printouts as the photographs of real printouts above.

Several additional options are available, such as the image resolution, camera field of view, and also “Surface roughness”, where we can choose the object’s surface finish from completely polished or lacquered (0.0) to roughly sanded (1.0). By changing this option, we can simulate that the 3D printout was post-processed after printing.

Finally, we can choose from different environment presets to place our object in and see how the object would look like surrounded by different illuminants. Advanced users can also load their own environment (also called HDRI) by downloading them as an EXR image (.exr) from the internet and placing them into the folder that opens with the Plus (➕) button.

The PrismSlicer Preview tab with the Environment emitter and Surface roughness options highlighted.A photorealistic preview of matte 3D printouts with realistic indoor lighting in a museum environment.
Figure: Choosing a realistic environment that acts as background and illumination increases the perceived realism of the images enormously. With the roughness parameter we can further simulate different post-processings, like polishing or varnishing, as well as Matte and Glossy mode printing in GrabCAD Print.

… a preview is much faster than a test print with postprocessing and saves a lot of wasted resin

The quality of the preview starts noisy but increases over time, the longer you let it compute the less noise it will exhibit. In either case, rendering a preview is much faster than a test print with postprocessing and saves a lot of wasted resin. Especially if you are not near a printer or rely on a printing service, that can be a real project saver, as it short-circuits the feedback loop that you need to tune your 3D designs for the printing process.

How accurate is PrismSlicer?

You might wonder how accurate the previews from PrismSlicer are. For this purpose, we have conducted several experiments and we show a few results below. We used PrismSlicer to prepare a couple of models, which we then printed on Stratasys J750 using the VeroVivid, PureWhite, and BlackPlus resins. Then, we took calibrated photographs of the printouts and compared them to the previews. We can confirm that the previews are highly accurate even for thin, translucent models!

We start with “Wheat Field with Cypresses” and “The Siesta”, printed 5 mm (0.2 in) thick and 56x42 mm (2.2x1.7 in) wide. Here are the results:

Scientific comparison between input textures, the PrismSlicer preview, and photographs of actual PolyJet 3D printouts of famous paintings.
Figure: Comparing the virtual preview with the photograph of real printouts we can observer a close match. The loss in image quality by the printing process is replicated very accurately in the preview. It is recommended to look at the image in full-screen.

The previews are so accurate that we can exactly see which parts of the textures will be affected by the 3D printing process!

You can do the same with any 3D model of your choice. For example, we can preview the translucency of very thin printouts. For this experiment, we loaded two models, one with a photo of a bunny, the other with a photo of a peacock. We sliced them in PrismSlicer and extruded the colors throughout the entire object. We have done the same for three different thicknesses: 0.25, 0.50, and 1.00 mm (0.01, 0.02, and 0.04 in). Let’s see how these printouts look when we place them on a black and white checkerboard paper:

Scientific comparison between the PrismSlicer preview and photographs of thin PolyJet 3D printouts for two images with three different thicknesses.
Figure: The translucency of ultra-thin objects is accurately represented in PrismSlicer's previews even across different thicknesses and color ranges. It is recommended to look at the image in full-screen.

Notice that the thin printouts are highly transparent and that the level of transparency depends on color. The color itself is also affected, with the thinner printouts appearing brighter as the white background shines through them. All of this was previewed in PrismSlicer and it accurately matches photographs of the actual printouts!

Step 4: Exporting to GrabCAD Print to start a print job

Finally, let’s see how we can print models that we sliced and previewed in PrismSlicer.

In order to 3D print exactly the same objects (slices) that we previewed in PrismSlicer, we have to export the files to GrabCAD Print. This uses the .gcvf file format that allows PrismSlicer to tell GrabCAD Print the per-voxel resin distribution in the printout.

In PrismSlicer, we open the “Slice” tab, select the “Stratasys (.gcvf)” file format, and start the export, which saves a new .gcvf file to our disk.

Exporting slices from PrismSlicer into a GrabCAD VoxelPrint Format (GCVF) file which represents exact CMYKW voxel assignments for the printer.
Figure: Exporting sliced models from PrismSlicer with the GCVF format tells the printer exactly which CMYKW droplets to print into which voxel.

Then, we open GrabCAD Print and we simply add the .gcvf file as if it was a normal model. This step is simple because GrabCAD Print knows how to process this specialized pre-sliced (voxel) file format.

Screenshot of GrabCAD Print with a voxel model in GCVF format loaded and the Glossy surface finish and Print button highlighted.
Figure: Importing pre-sliced GCVF files in GrabCAD Print is as easy as normal 3D models. Note however, that the surface texture will not show up on the printbed because the file is a voxel representation of the model. Many options are disabled, but the desired surface finish (Matte/Glossy) can still be selected.

Notice that the imported .gcvf model does not have any colors visible in GrabCAD Print, but it has the correct shape. Do not worry, the colors are stored in the file and even though GrabCAD does not visualize them, they will be printed correctly! Geometry errors on the GCVF models can simply be ignored, the result will not be affected by it. As usual, supports will also be automatically added.

Most options are disabled on this model, but you can still choose between Glossy and Matte surface finish. Having normal and .gcvf models next to each other on the same tray is no problem.

Share your experience

We would be happy if you shared your own experience with PrismSlicer and photorealistic previews in the comments. Additive Appearance offers customized calibrations to achieve accurate photorealistic previews using different resins, illuminants (tungsten, fluorescent, LED lamps), and so on. The enterprise versions of PrismSlicer also come with Python API support, so you can import objects and render them from your own custom scripts or the command line interface. You can always contact us to discuss a customized solution.

Related posts