‘Mt Rainier’ Development Preview
Build 4008
Welcome to the second development preview for the ‘LTE’ series of World Machine! This next-generation version modernizes World Machine and migrates from its original GUI platform.
Build 4008 brings the LTE branch very close to production ready. There should be few if any blockers for you to use LTE fulltime.
What’s New in LTE?
Here’s a high-level overview of what’s new:
- Progressive, high-resolution background builds
- Complete, granular edit history retained; jump into the past in your edit history to compare changes
- Edit multiple non-modal parameter dialogs at once
- Multiple, resizable viewpanes
- Retain settings ‘snapshots’ of important builds
- Devices and macros have greatly improved presentation of parameters (styling, grouping, etc)
- Full-skin darkmode UI
- Hit TAB to quick-add a device or macro from search
- Greatly improved high-resolution terrain display
- Maya-style ALT navigation in all viewports
- Tiltable orthographic layout view
There are many hundreds of smaller changes and improvements beyond the above!
Changes from Build 4005
These are the changes introduced since the last dev build
New Features
Framework
- “Save compatible with 3028” option added. All old worlds should round-trip successfully; if you add devices or update versions, devices may make a best-effort attempt to preserve compatibility but it is not guaranteed. Warnings are shown if any issues occur.
- Refactored tile name / output handling. Tiled output numbering can now be placed in the middle of a filename, to support schemes like ‘asset_x0_y0_normals.png’
- When a crash occurs, a dialog that allows you to automatically send the crash dump to us, no effort required.
- Snapshot functionality finished. You can create and delete, and they load/save with your world. They also show what edit they originate from
- Presets now provide a preview when mousing-over the entry
- Simplified the Render Extent presentation in the project settings dialog
- When expanding a parameter dialog, only the control gets the extra size, not the value display
- Show Advanced now resizes the parent dialog to show all params when first checked.
- WM will now bring to focus the existing parameter dialog if you attempt to open a device’s parameters again
- Improvements to Localspace packets; now support non-square aspect ratios
Devices
- Ambient Occlusion and Gamma devices added
- Clamp, Curves device now support RGB operation
- Colorizer now has alpha output and supports alpha in gradients
- Colorizer UI implemented and has new options to randomize, sort keys, and hexcolor display
- File Input, Tiled File Input now set extents to current render extent when added to world
- All generators now default to an origin in the center of the current render extent when added
- Curves device now lets you modify the endpoints of the curve, IE you can invert the input
- Layout path shape now has stroke width param
- Layout generator now has a (max) breakup octaves option
Features From build 3028
Framework
- Can now select only certain tiles for export
- Merge tiles to a single file option now works again
- Presets can now be saved/named/deleted
- Device dialog “center origin” button & x,y inputs work
Devices
- Library Input, Library Output file picker works again
- Advanced Perlin custom fractal controls finished
- Added back several height curve editor features, including interpolator and clear all button
- Moved Colorizer GUI to LTE branch
- Enabled Automation in LTE branch
Workview
- You can now drag a device into existing wires to wire it up
- Can now set a macro icon. Still need to make this appear in the rest of the app.
- You can now convert selected devices or groups to a macro again
- Added back all kinds of small workview context-menu commands, such as remove all route points, disconnect port, show device description, etc
Layout
- You can successfully add poly/line shapes by click-releasing instead of dragging
- Re-enabled all the right-click vertex commands like subdivide/delete
- Added shortcuts for vertices - currently ctrl+lclick on a vertex subdivides it, ctrl +rclick deletes it
- Layout shape import dialog implemented
- Layout invert checkbox exposed
- Layout set vertex height on rclick re-added
- Layout view cut/copy/paste/paste settings/delete/select all shortkeys re-added
- Layout falloff custom curve supported
Tweaks
- Project custom file path is presented better in general settings
- Default file path/suffix is added to Save As/Save Compatible
- LTE files no longer save the full edit history. This keeps filesize and IO time down. This will be the domain of session files.
- Added refresh button to Library Input
- History numbering maintained across file IO
- Removed “Show description on load” checkbox from world file. This is rarely desired, and will be replaced with something better…
Bugfixes since 4005
- Preview refinement limit is now restored from settings on program start
- Tiled options now actually set from dialog
- Fixed longstanding TFI bug where tilesets starting on non-zero indices weren’t validating properly
- Fixed TFI crash bug if tilese couldn’t be found
- Fixed tiled blending being interpreted opposite from what was shown in the dialog (oops!)
- Fixed major tile bug where blending % was interpreted opposite from 3028
- Fixed bug where WM would misinterpret any workview clicks after context menu.
- Fixed major bug where File Output would lose settings importing from 3028
- Layout shape custom params now load/save
- Fixed Export assets crash bug
- Fixed “Write output to disk” not building world properly beforehand in File Output, etc
- Fixed bug that accidently turned off the existence of the automatic history compactor. Oops!
- Added some spacing to parameter dialog to prevent various scrollbar mishaps
- Fixed bug where fast devices caused progressive viewports to mis-display output
- Fixed curves UI drag-out-of-bounds bug
- History memory manager now doesn’t count data multiple times
- Several small UI layout bugs
- Fixed scale hotkey not working
- Fixed transformation not using group center by default
- Fixed crash in layout view
- Fixed workview inadvertent drag on context menu bug
- Undo/redo commands are now global and work in more windows than the workview
- Fixed layout generator crash bug
- Fixed unresponsive workview when trying to drag a device bug
- Fixed bug where replacing a wire didn’t invalidate the affected devices
- Fixed crash bug in device workview
- Fixed crash bug in macro parameters
- Fixed workview exception-crash bug
- Fixed curve generator crash bug
- Fixed bug where Choosers/Combiners were sometimes not allowed to connect their bitmap outputs to other devices
- Tweaked the default history settings to be a little more aggressive in collapsing sequences of edits into one
- WM now respects devices that produce baked lighting (Lightmap Maker, etc) and doesn’t attempt to double-light their output
- Select Color device works again
- Reduced size of activation window to accommodate some display sizes
- Curves widget now doesn’t allow context menu click of parent to propagate to it
- Fixed 2D view flipped on Y axis
- Added CPU status to lower-right statusbar
Known Issues / Remaining to Implement
- Session support
- Explorer View (Exploration mode, endless terrain seamfixing)
- Modernize Tiled File Input dialog
- Layout shapes minor features (vertex welding, gridsnap)
- Minor remaining bugs and issues