Categories
LTE World Machine Development News

Introducing LTE

Long Term Evolution

Last time, I revealed that an effort is underway to modernize the UI of World Machine. That effort is code named World Machine LTE, or Long Term Evolution. We also talked about why that change is necessary. If you haven’t yet, read Part One. The main theme is that UI improvements are prohibitively difficult in the current framework.

What we haven’t covered yet is where we’re going. What new framework is World Machine moving to? What changes can everyone look forward to? Near term, and then further in the future?

And the framework is…

When World Machine began, the world was a very different place from today. We should expect the same thing going forward; our new framework needs to be adaptable and able to work in new ways and on new platforms.

Now, often you’ll hear the above as codeword for “we’re going to create a Javascript app in Electron“. And for many kinds of applications, that would be a reasonable approach. But not for World Machine: we need to be able to leverage the full native performance of your workstation.

So let’s cut to the essentials: After looking at a lot of options, I decided to base the new GUI on the QT platform. QT is a standard in our industry for good reason: It’s a platform that is feature filled, well designed, and especially with C++17 I’ve found it a complete delight to code in.

QT is also cross-platform: Although we are only targeting Windows at present, this will reduce the barrier for eventual mac/linux support. This has been requested almost from the beginning. Although there are currently a lot of windows-specific APIs being used, they are being reduced by the day as the standard library matures. There’s also this intriguing ability to cross-compile to WebAssembly and actually run in your browser.. but that’s for some future time perhaps.

The focus for this first LTE release is very deliberately to keep the look and feel of World Machine the same. When you start using the first LTE builds, you should feel right at home… except for some remarkable new features unleashed by both the new framework and some intelligent redesign of the core of WM. Internally, World Machine is the same native C++ code, with all of the features and speed of the previous builds.

Work has been underway for a while, and enough has been converted to the LTE framework that I can share some pictures of it in action.

So… Are you ready for the first public screenshot of the LTE branch?

First look at the LTE GUI
The first look at a new World Machine

I’m sure the astute will notice a whole lot of intriguing changes visible here… and we’ll cover all of them in future blog posts 😉 But seriously, there was sure a lot of low-lying fruit to pick! Some of the changes are enabled by the GUI framework migration, others from modernizing the core of World Machine. Either way, LTE will be a pretty dramatic release. When will it be complete? It’s far too early to give an exact date, but somewhere in the first half of next year is a good guess.

Over the course of LTE development, I’ll be writing short snippets about the new features, as well as other development topics. For now, I’ll just list some of the changes that are already live and working in the current LTE builds:

  • Optional full-skin “Dark Mode”
  • Progressive, high res background previews
  • Drastically improved device parameter presentation: Groups, Toggle “advanced” settings, and much more
  • Full edit history retained: jump to any point as desired, compare full-res results to the past
  • Save bookmarks/snapshots of past edits or exports
  • Responsive/resizable dialogs, panels, and windows
  • Consistency of font, design, etc through the app
  • Tooltips for every control and parameter
  • Multiple viewports of the same type
  • Customizable workspace
  • Full Unicode support
  • Support for Internationalization

Some of the above are absolutely game-changers for how you work in World Machine! Others fix longstanding problems that had no easy solution previously.

And you know what? That’s just what’s already implemented. Once the transition to the new platform is complete, World Machine will be finally unshackled and things can mutate even more dramatically. I have a lot of further ideas of where I want things to go. But most importantly, I want to hear what YOU would really love to see!

What would you change?

If you could change anything about WM’s UI, what would you change?

Having a major barrier to UI innovation removed is really liberating. Even some pretty big dreams are now possible if there’s enough interest in them, so chime in with your thoughts.

Comment on this post in the forum, or send me your ideas directly at [email protected].

By Stephen

Founder of World Machine

Notable Replies

  1. DUDE! I am STOKED!!

    That GUI looks fabilus…I cant wait to get it.
    The overlay view looks awesome.

    My most wished feature would be some floating device property area instead of open/closing the device property window.
    Second would be a better Layout generator.
    Third a better flyaround UI.
    ohh and also some easy toggle overlay to see scale on the heightmap like my old macro!!

    WTG @Stephen

  2. @WFab The background previews are a true game changer. As far as filtering down, the LTE build will become all of World Machine; which is to say, if you have active maintenance, it will be a free upgrade; otherwise you can renew for a pretty reasonable price and get the new version. The exact split of what is available in Pro vs Indie is also due for an update, but some features may be reserved for the higher-end tier.

    @Hotshot Absolutely. You can now split your viewport multiple times as well as float additional windows, and you can have more than one 3D view. They can either show the same scene from different angles or completely different devices.
    What was unexpected is how useful also having multiple device workviews is; the viewports are synchronized so you can, for example, start wiring from a device showing in one viewport and connect in another.

  3. Great to see this overhaul, very welcome!

    My biggest pain with the UI was that dialogs/windows were modal everywhere, I see you’ve addressed this already above. This absolutely needs to be solved, looking forward to this.
    And as mentioned above, 3d navigation needs to be overhauled, too. It just needs to be able to orbit freely, change view height etc. This was very limited in the past so hopefully you’ve got some ideas on this, too.

    Great initiative!

  4. The information in the project setting dialog window is not consistent for me.
    I tend to click around a few times to find the height and width setting on my procject.

    I would propose to move the Terrain altetud setting and maybe the Dimensionality from General Setup TAB to the Rendering extents and Normal build TAB where the Location are found.
    :bulb:

  5. Excellent! Look forward to follow the progress. Thanks Stephen! :slight_smile:

Continue the discussion at forum.world-machine.com

8 more replies

Participants