New SLM Data Engine
When we decided to put the considerably more advanced Display SDK into Pattern Generator, in fact we had to add a lot of features of the SLM Pattern Generator to the Display SDK first, which resulted in the new SDK 2.0 version. With the release of Pattern Generator 5 and SDK 2, both software packages now share the same SLM data engine on the GPU and thus offer the same display features and quality. All Zernike and many other functions are now computed on the graphics card.
The new SLM data engine uses OpenGL to accelerate the display of data and to ensure synchronization with our SLM devices. However, this also means we are now more dependent on the graphics driver and it is important that you have the latest graphics driver installed. This is especially the case for Intel graphics cards.
With Pattern Generator version 4.0, we already introduced simple tabs to be used instead of windows, but this solution did not live up to our expectations and we decided to replace it with a custom solution, as shown below.
The new tabs should make it much clearer which data is currently addressed on the SLM, as selecting a tab now automatically sends that data to the SLM. To close the SLM window, there is a general “Turn SLM Off” button on the left now.
With the integration of the Display SDK’s data engine, we also introduce new preview features.
The preview can now be zoomed and scrolled as needed. Also, we support a “Capture SLM Screen” mode now, where you can see screenshots from the screen, including any window obstructing the SLM window. When applying Zernike functions, you can now show the Zernike radius on the preview window. This is an example of the new feature to show information in the preview window that is not shown / addressed on the SLM.
The sidebar with all optical functions and data manipulation options has been redesigned completely, to make it more clear in which way your data is currently modified. The most important changes are:
- Computed CGHs (not loaded from files) can now be “recomputed” via the “CGH” button.
- The button “Reset Values” allows you to clear all functions being applied to your data.
- Right clicking a button resets the value to its default.
- Right clicking a group resets all values in that group.
- The transform functions from the legacy 3.x versions are finally back \0/. Different shift modes can be selected by holding down the left mouse button on each “Shift” button.
- “Transform Data” and “Adjust Graylevel” can be applied to all open data/tabs at the same time by enabling “Synchronize Data Properties”.
- “Beam Manipulation” functions which allow to refocus and steer your laser beam were put into a dedicated group.
- The wavelength can now be set on the sidebar as well.
- The Zernike functions are grouped by their order. Tip/Tilt and defocus are now available as well (in addition to “Beam manipulation”)
- The Zernike radius can also be set on the sidebar.
- “Beam Manipulation” and “Zernike Functions” button groups can be turned on and off for a cleaner user interface.
- You can now open multiple files at the same time, also for CGH computation.
- Multiple CGHs are now generated when displayed the first time, so when opening many images for CGH computation, you do not have to wait for all of them to finish.
- Most optical functions support the new transform/shift feature.