GIF: Lasering away the ice on Earth.

Here’s our round seven update on the development status of Surface Grids and Lasers. If you haven’t seen them yet, check out Dev Updates #1, #2, #3, #4, #5, and #6.

We hope you’ve been enjoying the new galaxies we added in Update 23. We still have another round of improvements and bug fixes planned for galaxies, but we’re proud of what we released and we’re shifting our excitement back to Surface Grids & Lasers.

A primer on Surface Grids for anyone not familiar:
It’s a feature we’re developing for Universe Sandbox that makes it possible to simulate values locally across the surface of an object. In effect, it allows for more detailed and accurate surface simulation and more dynamic and interactive surface visuals. It also makes it possible to add tools like the laser, which is essentially just a fun way of heating up localized areas of a surface.

Keep in mind this is a development log for a work-in-progress feature. Anything discussed or shown may not be representative of the final release state of Surface Grids. Read: Surface Grids & Lasers are not yet available in Universe Sandbox!
 

Gotta See It to Believe It

In the past few weeks, our graphics developer, Georg, has been taking the visual foundation that was built into the last version of Grids and plugging it into the new model.

This includes 1) getting the basics down for the shaders handling different materials and phases, from water to snow to molten silicate 2) getting all of Earth’s vegetation in the right spots 3) adding lighting, including effects for diffusion and specular and rim lighting for solar and atmospheric effects 4) and adding normal mapping.

The normal mapping creates the effect of bumps and ridges, or in other words elevation changes for things like mountains and crater rims. For a lot of visual effects, we often start with more exaggerated settings then dial it back and tweak it until we reach a more realistic appearance. In the screenshots below, the bumps are very pronounced and make for surface features that wouldn’t be discernible when viewing from space. While it’s not realistic and we plan to tone it down for the default setting, we are considering exposing this value and letting anyone set it to however they prefer.

 
Please note that you can safely ignore the incorrect water levels right now. We’re well aware that Europe is completely flooded and we’re working on a fix (even if it may be an accurate representation of what human-caused climate change will do to Earth…).

This visual foundation now works for planets with known heightmaps, but it will eventually be applied to all procedurally generated objects. So whether you’re lasering Earth or a randomly generated rocky planet, you’ll see the nice lighting and normal mapping.

Graphics for Surface Grids are definitely still incomplete, but everything is coming together nicely. The screenshot below shows a tidally-locked, near-Sun Earth that is frozen on the far side and molten on the near side (note: it looks especially “clean” now because it doesn’t yet include additional visual noise from blurring, blending, and randomness).
 

Lasers!

We haven’t shared much about lasers yet, so let’s fix that. Before, lasers were hooked up to the data side of things, so you could see its effects in the data map, but that was about it. Now that we have the visual foundation described above and can see the effects of temperature on the planet itself, playing around with lasers just got more interesting.

We recently added a radius setting that multiplies the area of effect (the laser visual itself is not yet affected by this). So whether you want to melt the whole ice cap or you want to carve your name, you can do it.

In the case of the GIF shared at the top of the post (and maybe I’m just hungry right now), this reminds me most of decorating a cake. Especially the part at the end where I do away with careful decoration and just throw a bunch of icing (er, lasering?) on the top.

We often see debates in the Universe Sandbox community about these lasers — some say they’re unrealistic and not a good use of development time, and others will stop at nothing to get their hands on them.

To the first, naysaying side we say this: Yeah, lasers like this don’t exist (at least, not yet). But… what if they did? Universe Sandbox has always been about realistic simulation of fantastical scenarios, and we think this fits very nicely into that. As for development time, lasers are a tiny fraction of the larger work on Surface Grids. They’re essentially a nice side-effect of having a system like Grids that can simulate localized surface properties, much in the same way Grids will allow us to add basic life simulation in the future as well.

And to the laser fanatics we say this: Yeah, they’re fun. Thanks for your patience!

What’s Next

There are a few higher-level things we want to get working, like being able to locally deposit water and having vapor flow connected to axial tilt. And then there are some must-fix issues like proper water level on Earth and proper phase-handling for Venus (it shouldn’t look like it’s covered in liquid water, right?). There’s also more visual work to do with blending materials and phases and handling procedurally generated objects.

So we’re a long way from the starting gate, but we’re not quite in the final stretch yet. It may be fair to say we’re at the point that was described all the way back in the second dev update: “… often times the longest and most challenging part of development comes later, when we’re tweaking, polishing, finding and fixing bugs, and making sure all the complexities of the fully fleshed out model play nicely with each other and the rest of the simulation.”

We’re definitely interested in making experimental builds available to the community in the future, before we’re ready for a full release. We’re not ready to say when these will come yet, but we hope they’re not far away.

As always, thanks for your patience and support while we work on this next big, complex feature for Universe Sandbox!