Logic World Wednesdays: The Outlined Edition
As part of my ongoing efforts to make Logic World’s building mechanics as fluid and easy-to-use as I can, this week I’ve been polishing up the mechanics for building with resizable components. You can now directly start resizing something while you’re placing it, and I’ve added a new Drawing mechanic for building with boards.
I’ve also polished up the look of the resizing UI: there’s a snazzy checkmark in the center that you can click to confirm the new size, and all the UI elements now change color when you mouse over them, to communicate that they can be clicked on.
When I was working on the new Resizable Components UI, I ran into a limitation of our outline tech that was preventing the checkmark outline from showing up.
The problem was that all of the outlined objects were being outlined together as one pass. This image explains what that means better than my words did:
Since the checkmark outline was nested inside the outline of the component being resized, it couldn’t show up; the checkmark edges were not part of the edges of all the outlined objects.
This has been a limitation of our outline system for a long time, and this week I finally set about fixing it. The outline system now supports multiple independent “layers” of outlines, where each layer can overlap with the others.
With these new outline layers, I can now draw the checkmark outline properly. You can see it in action in the video above.
I also added one outline layer that has “depth culling” enabled. This means that only the visible parts of the objects get outlined. The depth culling layer is being used for the outlines of interactable objects, and it drastically improves their look.
Finally, I added some options to the outline rendering for folks to tweak to their preference. You can now adjust the outline thickness, the outline fill amount, and the outline intensity.
After I showed off the Compass last week, many of you suggested that it should rotate as the player does. After playing around with it some more, I’ve come to agree, and so the compass now always points in the direction of rotation.
You can see this in action in the video above.
This week I’ve been working on a status page for all the services that make up logicworld.net. A service is a little piece of software (in our case mostly written in Go) that is responsible for a task, like sending emails to users or building mods. This status page is made using Cachet, which allows us to notify you about maintenance ahead of time and it lets you see the status of every service as well as a real-time graph of visits to logicworld.net.
You can check out the status page at https://status.logicworld.net/.
See you next Wednesday!