Development Highlight: 3D Viewer Improvements

The 3D Viewer has seen a few incremental improvements during the course of V6 development. Not all changes to KiCad have to large by themselves to improve KiCad.

Populate Silkscreen and Soldermask Colors from PCBNew board properties

A small quality of life improvement, Fabien Corona in MR#63 added the ability for the 3D viewer to use the board soldermask and silkscreen colors as defined in PCBNew just like the title of the merge request implies 😀

Physical stackup page in Board Setup shown with color options circled

Plated and Non-Plated Copper

A subtle change has been made in MR#405 by Mario Luzeiro that affects how copper is rendered. The visual difference between plated copper pads and non-plated copper pads will now be visible as well as copper in general.

This image shows a ENIG plated copper hole compared to the surrounding copper traces when the soldermask was turned off.

Image showing plated ENIG pad with exposed copper traces (soldermask layer disabled)

Model Opacity

A utility feature was added to adjust the opacity of 3D models that can aid in mechanical design previews with a simple slider MR#188 Mario Luzeiro in

Raytrace Lights Configuration

Configurable Raytracing Lighting

Up until now, raytracing used a fixed light source during rendering. MR#188 by Mario Luzeiro adds light source configuration to the options dialog that allows customization.

Raytrace Lights Configuration

Rendering Performance Improvement

Oleg Endo was unhappy with the rendering performance of the 3D viewer which on his system exhibited frames per second rendering times as slow as 10 FPS. After his changes in MR#145 rendering speeds may be up to 8x faster as before.

Lighting improvement with floors

The floor plane object that is optional to add in the 3D Viewer previously cast a shadow onto the bottom side of the board. Emery Burhan in MR#170 submitted a patch to disable the casting of shadow by the floor object to give the PCB a more uniform look.

Bottom of board before floor reflection:

Bottom layer lighting before floors added

Bottom of board after floor reflection:

New floor reflected lighting on bottom layer

Configurable View Change Speed

Emery Burhan in MR#171 added the ability to set an "animation speed" when toggling between board views with hotkeys.

Now the camera animation speed can be adjusted by a slider which can be found in the options dialog.

Options dialog with animation options circled

The slowest speed of 1 looks like this

Clip of animation speed 1

The fastest speed of 5 looks like this

Clip of animation speed 5
Note These features are only present in nightly builds, please only use them for testing and experimentation