Unity

Lacuna Passage - Devlog #30 - The Power of Unity Plugins Round 3

We are making this a semi-regular segment as we continue to use all the great tools available on the Unity Asset Store to complete Lacuna Passage. Check our previous posts for more plugin recommendations:

Round 1 and Round 2

Physics To Animation Tool - by Drunken Lizard Games

We actually experimented with using this for the rebuild of TimeFrame that we are putting together in our free time, but now we are considering using it in Lacuna Passage as well. It's a great way to "capture" a physics event and replay it exactly the same every time. In the past we have had to use complicated animation exports from 3ds Max or just let our physics events react differently every time with Unity's physic simulations. Not only is this a simpler process, it also greatly improves your game's performance since it doesn't require physics calculations.

Mega Scatter - by Chris West

I have been using this plugin in tons of great places. Most notably, for mass-placing rocks around our Mars terrain. This is another very polished plugin from the makers of MegaFiers, the Unity mesh deformation system. The scattering options are extremely customizable and their user support is excellent. The only downside we have found is that large scenes start to present scattering issues including slow down, but this system is perfect for scattering objects around medium and small scenes.

Shader Forge Beta - by Joachim Holmér

We already mentioned this one in a previous post back when it was still in Alpha, but now it is in Beta and available on the Asset Store officially. I can't say enough good things about Shader Forge. The developer is extremely active in improving this visual shader editor and we use it for all the shaders in all of our projects now. This isn't just a tool, it's an investment in the quality of your game's art. If you come up with an awesome shader you could even put it up on the Asset Store yourself!

VPaint: Advanced Vertex Painting - by Valkyrie Entertainment

This plugin is super useful when combined with Shader Forge. We are working on some shaders that utilize vertex colors for texture blending and with this vertex painting tool we can experiment with these blend settings without having to swap back and forth between Unity and our 3D modeling applications. As usual, some of the best plugins are the ones that save you time and VPaint is no exception. 

Lacuna Passage - Devlog #26 - Development Since GDC

After returning from GDC last month we have come back to development with a renewed vigor. I met some great people and attended some great sessions, all of which have inspired the direction we will take from here on out. Today I want to discuss some of our current objectives.

One of our big focuses right now is to polish up our dynamic music system. Over the last several months we have determined that our music solution might be a valuable addition to the Unity Asset Store. The system we have designed solves a unique problem that we think other developers might be able to benefit from (you can see an early version of the system in this devlog video we posted a while back). With the announcement during GDC that FMOD will be free for indie developers with small budgets we were worried that our system might become redundant, but after looking at the pros and cons of using FMOD we are convinced that our system provides a simpler and more streamlined workflow for developers looking to utilize dynamic music stems without the need for an external editor. We will likely charge a small amount for our scripts on the Asset Store to see if we can subsidize part of our development cost with the income.

Some of you may have heard of the game Extrasolar which utilizes a non-real-time photography mechanic. The developers of Extrasolar gave a talk at GDC called “Game Design at 0.0003 FPS” where they detailed some of the specifics of their system and it got me thinking of ways we could benefit from this approach. We obviously still have to maintain a decent frame rate for the exploration elements of Lacuna Passage (which the player can influence by selecting different quality settings), but when the player chooses to take a photo we have some leeway. We can render a higher quality screenshot from a secondary camera with more image effects than the primary game camera at the cost of only an extra half second of rendering time.

These are some examples of non-real-time photos taken from the game Extrasolar. Click to see the full resolution.

These are some examples of non-real-time photos taken from the game Extrasolar. Click to see the full resolution.

For those with high-end gaming rigs, taking a photo will take almost no time at all and the quality will be identical or even slightly better than the quality of their game-view camera. Those with lower-end hardware running on low quality settings will still get the same high-quality photographs just with a slightly longer rendering time (still less than a second). Since we don’t have to worry about rendering multiple frames per second when taking a photo we can create a unified quality for all photos for all players. This is especially useful when we look at our VR implementation. Obviously we can’t take a screenshot of the view straight from the Rift or we get a distorted, double-vision photo. Below you will see what a photo taken from the Rift looks like with our new secondary camera system.

Top image is the view from the Rift cameras. Bottom image is the photo taken from that view. Click to see full resolution.

Top image is the view from the Rift cameras. Bottom image is the photo taken from that view. Click to see full resolution.

We have also been working to improve our asset pipeline so our artists can produce content faster and more efficiently. An important part of this process is our Asset Previewer. Our Asset Previewer is actually a small separate Unity project that contains all of our shaders from the game and some tools for viewing assets that help to ensure that when they are put in the game they will fit with the scale and style of all the other existing assets. This is extremely useful for us since we cannot afford to purchase Unity Pro licenses for all of our artists. They can preview assets with this project in the free version of Unity and I can import them into the main project later.

Recently we added a feature that lets us export animated gifs straight from the Asset Previewer to create seamless turntables of our assets. Between these gifs and other screenshots we can get a great idea of what an asset will look like before we ever need to place it in the game. Here are some examples.

The weeks since GDC have been extremely productive for us and we hope to keep up this pace. If there is anything else you’d like to see about our development just let us know in the comments!

Lacuna Passage - Devlog #19 - The Power of Unity Plugins Round 2

logo-titled.png

Back in April we posted about some of the Unity plugins that we are using to create Lacuna Passage. Since then we have started using even more plugins that have further eased our development workflow. Here are some of our favorites.

Terrain Composer - By Nathaniel Doldersum

I wish we had access to this tool from the start. Terrain Composer allows you to do some pretty incredible things to generate and tweak your terrain directly in Unity without the help of external tools. We still utilize a few external tools like World Machine, but Terrain Composer helps in handling some of the more repetitive menial tasks. This is an extremely powerful tool for those who take the time to learn it.

ats Colormap ULTRA Terrain Shader - By forst

We talked about our terrain shader in our previous showcase, but this is much more than just a shader now. The updates made here have drastically improved our terrain creation workflow, especially now that it is fully compatible with Unity 4.X. The new editor interface for setting up your terrain is super intuitive and automates many of the steps that were originally mostly manual. In my honest opinion Unity needs to make these kinds of terrain tools the default. When combined with Terrain Composer you have everything you need to make the most believable worlds possible in Unity.

Highlighting System - By Deep Dream Games

We are using the Highlighting System to help the player identify some objectives and highlight key objects in the environment. The effects are fairly uniform, but you can change colors and overlay/blending methods to suit your needs. There are plenty of provided example scripts to get you started with whatever highlighting functionality you might need.

Mega-Fiers - By Chris West

Mega-Fiers… What can I say about Mega-Fiers that you haven’t heard already (seriously, they do an awesome job marketing and demonstrating this plugin). Well, in case you don’t know, Mega-Fiers is an extremely powerful mesh deformation plugin. If you need a mesh to bend, twist, wave, squish, or anything else, then look no further. I first used Mega-Fiers when working on TIMEframe to create the slow-motion blowing banners in the city. I was able to animate the banners in 3ds Max using physics simulations and export the vertex animation data for use in Unity. The result is a smooth, incredibly detailed cloth-like animation that would not have been possible with the Unity cloth animation tools. We are excited about the possibilities for Mega-Fiers in Lacuna Passage.

NGUI - By Tasharen Entertainment

There is a reason that NGUI has become almost the default for creating user interfaces in Unity. It is undeniably better suited for the task than the built-in Unity GUI tools. We recently began work on converting the datapad GUI over to NGUI and we are very happy with the results. Fewer draw calls, manageable layer depths, texture atlasing, and more. I can’t imagine using anything else. Once you try NGUI you don’t go back.

Shader Forge Alpha - By Acegikmo

In our last plugin showcase we mentioned some great hard surface shaders; however, since that time we have made the plunge into creating shaders of our own. I had used the node-based Strumpy Shader Editor for a few years, but that plugin seems to be defunct now and not supported correctly in Unity 4.X. Luckily Shader Forge appears to have picked up the mantle. They are still in Alpha, but we have been testing the Alpha version to create new shaders for Lacuna Passage and we are blown away with the results. Plugins like Shader Forge go a long way in closing the visual gap between engines like Unreal and Unity. Keep an eye on this one and snatch it up the minute it hits the asset store.

 

Lacuna Passage - Devlog #18 - More Concept Art, a New Shader, and Terrain

While we toil away on development of Lacuna Passage we thought we might give you a peek at some more concept art. We have really hit our stride with our art style, due in large part to our concept artist, Brandon Kern. Check out some of his work below.

As we worked on bringing these concepts to life in 3D we realized that our equipment shader just wasn't up to the task. The normal maps were not as pronounced as we would have liked, and it was difficult to define strongly contrasting materials. Our models looked somewhat desaturated and ubiquitous across what should have been different surfaces. We set about creating a shader that would give us greater control over contrast and material definition (things like fresnel lighting, reflectivity, edge highlighting, and specularity). Below you can see the result of our efforts. It is now much easier to see the difference between surfaces like shiny plastic, dull metal, and rough rubber. This improved shader is still in testing since it was created using an alpha version of the upcoming Unity add-on "Shader Forge", but we are excited with the results and hope to utilize the eventual commercial release of Shader Forge.

We've also been hard at work detailing the full-scale terrain that will be featured in the final game. Proper textures will be applied much later, but the massive heightmap is coming together quite nicely and should present the player with a wide variety of real Mars geographic features to explore. Check out a little preview below.

Time-lapse of the (still unfinished) terrain

Time-lapse of the (still unfinished) terrain

Untextured 3D preview of terrain in its current state

Find out more about how we are creating our terrain in our previous devlog.