Well there’s lots to talk about this month :)
A few updates ago, I mentioned that we had incorporated Marmoset Skyshop into our rendering pipeline. Well we have now moved away from Skyshop and to our own lighting model.
I have to say that Skyshop is a great product, but it’s better suited for static environments. Because everything in our world is so dynamic, a lot of the great features of Skyshop were redundant in our game. So after having to customise and re-write most of Skyshop to suit our needs, the decision to just write our own lighting model wasn’t difficult.
We now use a custom physically-based lighting model. Physically-based shading is a bit of a buzz word in games development right now, and for a pretty good reason. Light affects how you perceive everything in a game – without it everything would be black! So it’s pretty important to consider how the game environment reacts to it. A shading model is what defines how a surface reacts to light in a game. A physically-based shading model takes that a bit further, introducing concepts like energy conservation, the fresnel effect, micro-facets and more. There’s a variety of different lighting models out there and different lighting models suit different materials. Some lighting models are better at representing things like plastics and rubber, whereas some are better at representing metals, and others are better for rough surfaces like cloth and skin.
The screenshot below is a good visual representation of the differences between two of the lighting models used in Stranded Deep. The surfaces’ roughness increases from a value of 0 to 1, from left to right.
The bottom spheres use an improved version of a traditional lighting model that is used in a lot of games called Blinn-Phong, great for things like hard plastics and rubber. The top spheres use a custom lighting model that is better suited to things like metals and rough surfaces like rock, sand, skin and cloth. I’ll be going into more details about the rendering techniques used in Stranded Deep after release, but for now at least that gives some context to what I’ve been working on lately and why.
Ben’s been working on character animations, which has helped add another level of immersion. Building and crafting has been fully functional for a while now and is working great :) We’re finalising everything that you can craft and build. All the physics for the raft building and propulsion has been completed as well. It is really unnerving motoring around an island on your raft at night, or going out into deep water!
There’s been a lot of work finalising all our creatures. A while ago we purchased an ocean pack full of fish. It would have been a great way to get a lot of variety quickly.. However, there was a lot of work getting them game-ready. Ben has had to re-topologize every one as they had a silly amount of triangles, and then create the various levels of detail for each fish. Thankfully animating them wasn’t as painful. Using Unity’s Mecanim animation retargeting, a base fish model could be rigged and animated and then applied to all the smaller fish. Larger animals like sharks, rays and turtles have their own individual animations.
Ben’s also been hard at work creating the intro sequence for the game ..and it’s looking and playing fantastic! We had discussed the possibility of not needing it for early access, but after experiencing the intro scene, the game isn’t the same without it! It’s intense and creates a lot of impact. We’re not revealing much about it as we think it will be more enjoyable as a fresh experience.
There’s lots of other little things as well, those boring but important things ..things like confirming menu designs and making sure saving works. We’ve decided on an end-game scenario that players will have to work out ;) We also noticed that we have a lot of german, russian and french followers so we’re looking into translation :) As a whole, the game is really starting to come together and feels great. It’s getting closer guys! :D