Ver. 5 3D very slow

I am using the latest nightly of V5. Windows 10, 64 bit. 2GHz Celeron, 8GB RAM. Intel HD graphics set for “Performance”. 3D rendering is very slow- 30-90 seconds for 3D preview in footprint editor, 0.5 to 2 hours to render a full board with +/- 100 components. Once the board is rendered, everything gets so slow the only way to move on is to kill Kicad from the Task Manager.
The only way to use it is in normal 2D PcbNew mode, and maybe once a day do a 3D view to check on things- leave the rendering to complete overnight and then check it in the morning, kill Kicad from Task Manager and restart it.
Other programs on the same PC seem to render 3D okay- Freecad, Turbocad etc.
Has anyone else experienced this? I saw some mention of this in some threads from last year and earlier on V4.

Is it possible you have raytracing enabled?

This is the reason i ask: https://www.mail-archive.com/kicad-developers@lists.launchpad.net/msg29111.html

I am not sure- how do I tell and how do I turn it off?
I have started trying to view my board, but all of the tool icons are inactive until it completes (which will take a while!).
When it becomes active again I can take a look.

In the 3D viewer, you can lock the raytracing on in the menus.


When ray tracing is active in the menus, every time you change your camera angle, zoom, position, reload board, etc the display will raytrace it, which on my fast Win10 machines (but not dedicated CAD or Gaming rigs) is fairly slow.

If you leave that menu setting to “OpenGL” like I have, then the raytrace button on the tool bar: will raytrace once, and revert back to OpenGL once the camera is changed or board reloaded.

I also have experienced that if I leave the 3D window open in raytracing mode but in the background, just working on the computer is slow with my mouse pointer flashing to and from the “thinking” pointer shape around 1Hz. Not only is the mouse pointer flickering distracting but the system performance kind of stutters.

YMMV

In my slightly older nightly it is under preferences->render engine.
Available options are opengl and raytracing. Make sure this is switched to opengl.

The exact wording of the options and the menu under which it is found might be different in your version.

Thanks. I will check. Unfortunately I clicked on settings, and now have to wait another 3 hours for it to render before I can click on preferences!
You mention gaming machines- would they be faster for this?

I honestly don’t know, not knowing if KiCad’s ratracing algorithms can take advantage of graphics accelerators. Looking at how the raytracing progresses across the screen, probably not. I was just trying to give a rough estimation of the computers that I have access to. I think my personal computer is faster than my work computer at raytracing. But probably because my personal computer is an i7 laptop workstation, and my work computer is an i5 office laptop.

No. The technologies behind real-time 3D for gaming on the one hand and raytracing on the other are different. Raytracing calculates light rays and it doesn’t have real-time hardware support per se, unlike hw accelerated 3D. See https://en.wikipedia.org/wiki/Ray_tracing_(graphics)

1 Like

Well… stay tuned

why don’t you open an empty board with pcbnew and change the setting in the 3D viewer for this empty one… the rendering will be extremely fast and then it will be kept for the real populated board

It is in GL mode, not Raytracing. Still takes 3h15m to render a view of the board. Basic conclusion- 3D view is fun and interesting, but not actually useful. Maybe use it overnight as a check. But count on doing 99% of your work in 2D.

Or, there’s a bug or interaction with your config that needs to get pinned down.

No way OpenGL rendering can take so long, not even without hardware acceleration. There’s something wrong.

Intel HD graphics often cause problems, and seem to struggle with OpenGL. I think they are what are called “entry level”, ie cheap/low performance. But this sounds like there is a driver bug, which may be related to Win 10 updates. https://github.com/vispy/vispy/issues/1318

I don’t know if you have the option to upgrade video drivers on Win10, but I would look into that.

in almost three year since 3d viewer has come out, this is the first real user case issue I’ve seen reported to the forum…
would you mind to post your OS, kicad full version details and Graphic card model and drivers…

Eventually this may have to be reported to kicad bug list.

I have a Win10 Intel I5 laptop and 3D rendering in OpenGL mode is very fast. This one sounds like a bug or maybe wrong/missing driver

Yes, probably a bug, but I5 is probably a lot faster than 2GHz Celeron! I’ve used some low end kit, and it is ok for general office/browsing, but struggles with anything else. I admit this is a problem I prefer to throw money at, I have a water cooled graphics card… Not everyone needs that, but even a cheap graphics card can perform way better than a builtin graphics. It doesn’t help that the builtin graphics often have buggy or poorly supported drivers.

Yes, I think there is something to with an interaction with my system. I just did a clean installation of the Mar. 23 nightly on another machine, an Intel i7, 2.8GHz laptop. I moved the same project there and it renders the 3D view in some 10 seconds or so. Unfortunately the monitor is not as nice! But maybe do my 2D layout on the system with the nice monitor and move the project to the other machine for 3D viewing.
It is interesting- the slow machine is a Celeron, 2GHz with 8GB RAM. The fast one is an i7, 2.8GHz with 16GB RAM. The fast one renders in 10 seconds, the slow one around 3 hours.
I wonder if it could be disk access speed?

Incidentally, the 3D view on the fast machine is magnificent!!! I have never used a 3D viewer with PCB layout, and this project is fairly complex with mixed SMT and THT, with large transformers, heat sinks etc. Being able to see clearances, and think about getting a scope probe in is truly fantastic.

Hi Gordon,
something is not ok or need some clarification with your situation.

  • When you mean “render” do you mean “loading 3D viewer first time to see the board” or do you mean “refresh rate for update a new view by mouse movement”?

  • How long does it take to open an empty board on 3D viewer?

  • If it takes 90s to preview a footprint then something is wrong.
    It may be some bug on Windows/drivers as it was described latter or
    from your description it sounds that you are using extreme complex (I mean over complex for the proposes).

First I suggest to make sure it works with no problem with an empty or with no 3D shape board. You should be able to open on any system with or without GPU drivers very fast ~1s

Then if it is OK let have look on your models. Are you able to share with us?

Are you using STEP files directly? It may be that the models are too complex and are creating huge representations.
I suggest if it is the case that you using StepUp (by @maui) using FreeCAD and explore the export options to WRML and see if you can simplify the model (making the result file smaller)
EDIT: you should do it for the most complex models. You can evaluate the size of the WRML. A WRML file with more than 1MB starts to be complex (special if you use a lot of components).

The hardware specification should not be a problem (but OS and Drivers may be)
I developed 3D Viewer without GPU drivers and it is using OpenGL specification that is compatible with graphic boards older than 10 years.

Do not give up on 3D Viewer as it should be very useful for MCAD visualization!

1 Like