News

Windows Terminal Text Rendering Revamp: 'We Were Wrong'

Windows Terminal Preview 1.13 is out with an updated settings UI design, a new "elevate" profile setting and a revamped text rendering engine, about which the dev team issued an apology.

Terminal users can now enable a new profile setting called experimental.useAtlasEngine to try out the new DxEngine-based "AtlasEngine" text renderer, instead of DirectWrite. An October 2021 pull request in the terminal's GitHub repo titled "Introduce AtlasEngine - A new text rendering prototype #11623" explains the idea.

"This commit introduces 'AtlasEngine,' a new text renderer based on DxEngine," it says. "But unlike it, DirectWrite and Direct2D are only used to rasterize glyphs. Blending and placing these glyphs into the target view is being done using Direct3D and a simple HLSL shader. Since this new renderer more aggressively assumes that the text is monospace, it simplifies the implementation: The viewport is divided into cells, and its data is stored as a simple matrix. Modifications to this matrix involve only simple pointer arithmetic and is easy to understand. But just like with DxEngine however, DirectWrite related code remains extremely complex and hard to understand."

Microsoft's Kayla Cinnamon, a program manager on the terminal team, introduced the v1.13 update in a Feb. 3 blog post, referencing a kerfuffle last summer about the team's decision to stick with the DirectWrite general purpose renderer when complaints arose about terrible performance.

Enabling AtlasEngine Preview
[Click on image for larger view.] Enabling AtlasEngine Preview (source: Microsoft).

"We were wrong," she said. "As such, we dedicate this experimental renderer to the community as an olive branch. We know we have so much more to learn, but we hope that you will accept our apology and understand we're humans behind this product with a capability and willingness to learn from our past mistakes. Thank you for sticking with us. We strive to make this an experience we can all learn from to not only improve ourselves, but to improve our product and delight you all."

The new AtlasEngine renderer is described as still being a work in progress, possibly unstable and missing features, but the team expects to improve it and make it the default upon reaching feature parity with the existing DirectWrite renderer.

As far as the updated settings UI design, it's now aligned with new Windows 11 style, using WinUI 2.6

The new elevate profile setting, meanwhile, lets users automatically launch a profile with elevated "Administrator" privileges.

Among other miscellaneous improvements are a customizable profile bell sound, new restoreLastClosed, exportBuffer and adjustOpacity actions, support for snap layouts in Windows 11 and more improvements, in addition to several bug fixes.

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus

Featured