20: Playable Build

Hello again.

On April 30th, our team showed off a playable build for Small Hours to the public. The previous two days before that were spent constantly working on the game and finishing it up. A lot got done and we were proud of the results. The college class this project was a part of has since ended. The team has separated, though some of us still remain on the Slack workspace. As for the build that was shown off, here are links to the Windows and Mac versions for anyone to try out. Feel free to message us with any thoughts on the game or bugs you encountered. Also feel free to post playthroughs online.

Windows Build

Mac Build

Most of the game is done, but we’re still going to be making some updates in the future to fix bugs and add some features that didn’t make it into the latest build. This includes updates to the ending, additional audio, and functionality for the cat. We plan to have the game available up on Itch.io and GameJolt by Halloween this year with a final release.

Thank you to everyone who has followed us and supported us along this journey. We hope you enjoy the final game when it is released.

-Behind You

Advertisements

19: Character Movement Update

Recently, more progress was made on player movement. Some clips of this motion can be seen in previous posts, but we’ll take a closer look in this short post.

Previously, the player character was a lot simpler. If you moved in a direction, the character would instantly rotate to that direction and immediately move in that direction at the desired speed.

Acceleration was added to the player movement so that the character didn’t instantaneously switch speeds. Easing between rotations was also added so that the character didn’t instantaneously switch from one rotation to another. Velocity and rotation were also linked together now. The rotation would change depending on the player’s input and then a speed would be applied in whatever direction the player was currently facing.

More recently, the character rotation and velocity became even more intertwined. If the player moves forward, left, or right within 70 degrees of where the player is currently facing, the character will simply rotate in that direction and keep a steady speed in that same direction (same as before). However, if the change in rotation exceeds 70 degrees, the character will keep their current rotation, decrease speed to a halt, rotate the character to be closer to the desired angle, and then increase speed to the desired amount. This gives the character a slightly more realistic and grounded motion while walking/running around.

There’s also different speeds at which the player will rotate during a large angle change vs a small angle change depending on the current player state (e.g. walking, running, crawling, jumping). It won’t feel as tight as player control you’d see in a platformer, but that wouldn’t ultimately fit with the type of game we’re trying to make. We’re moreso inspired by games like Ico and The Last Guardian – games with loose physics-based movement.

-Behind You

18: Unity Timelines

Sometimes in video games, predetermined (scripted) events are desired for certain moments, allowing for finer control over the presentation. These can be used for scripted cinematics in the game where control is taken away from the player. They can also be useful for making game trailers, which was done 2 weeks ago. In this little walkthrough, we’re going to go over some of the process in using the built-in Timeline functionality in the Unity 2017 game engine.

The first thing to do is to open up the Timeline window under Windows>>Timeline Editor. When that is visible, you can select any object in the scene hierarchy and click Create in the Timeline window. This will add a Director component to that object and have you create a new Timeline asset.

On the top of the Timeline window is the actual timeline where 0 is the start of the event, which can be triggered to occur at a certain time or start on awake.

To have something happen to the object during the event, you have to add a key frame somewhere in the timeline. To start, click the red record button next to the object you want to add a frame to.

Next, make sure that object is selected in the scene hierarchy, right click (almost) any property in the inspector, and click Add Key.  This will record the data of that property for this key frame.

You can then click any other spot in the timeline and add another key for some property to have it change over time.

If you click and drag across the timeline, you can preview what the transition will look like in the scene view.

If you click the red record button again to make it stop recording, you can preview the transition curves by clicking the box right next to that red button. You can change the curves by right clicking the points and messing with the tangents to the left and right.

You can also add more objects to this timeline by dragging and dropping them from the scene hierarchy to the Timeline window and selecting Animation Track.

As an example of what’s possible with timelines, below is a shot from the recent teaser trailer. It only involves a camera moving from one position to another and a sprite changing opacity (the floating black squares are an added particle effect).

We hope this gave a decent overview of using Unity’s Timelines. It’s a very useful tool for all sorts of game moments. Until next time.

-Behind You

16: Buildings and Placement

Welcome you who have been keeping up with development of our game, Small Hours, and those of you who are just learning about it. In this post, we’re going to show how we’re going about making the streets that you’ll be exploring in the game (this is all done in Maya, exported to Unity later).

One of the first steps we took was to make several building chunks (see Image 1). These chunks can be made in different sizes or heights depending on what the game designer wants, but for this post we’re going to keep the buildings close to the same size.

Once you’ve made your building chunks like those seen in Image 1, you’ll need to figure out how to position them together so that there’s no noticeable cracks in between the buildings that players could look through. This can be done by moving your object’s move point to the corner that you wish to adjust from (as seen in Image 2). This can be done in Maya by pressing B which allows you to move the move point to where you like. However, to get it truly on the corner you need to turn on “move to vertex,” which can be found on the top menu. This will allow you to only move to spots where there are vertices.

Now that your movement tool is in place, you can then use the “move to vertex” tool to snap your buildings together (see Image 3).

Once your building chunks are snapped together, you can then rotate your building into the desired position (see Image 4 and 5).

Once you’ve done this, its just a matter of rinse and repeat until you have the block or area you wanted (see Image 5). Though it is recommended that you build your level in Unity or other game engine so that you don’t have to worry about your file getting corrupted in the transfer, which can result in having to build it again.

Until next time.
-Behind You

15: Lights

Lighting is incredibly important in video games, especially horror. It sets the mood, draws the player’s attention, and makes the game easier to read and understand. Just like for filmmaking, games require certain techniques and strategies when dealing with light, from their location in the scene to the many variables that can be used to fine tune each individual light. Unlike with filmmaking, however, optimization and performance have to be taken into account in order for a game to be played in real time on most computers or other devices.

This is where baked lighting comes into play, providing a way to pre-bake lighting information into the textures of static objects (those which won’t move during play). Instead of computing and rendering every light in the scene at every frame, baking the lights will do it once and store all of the shadows and other light information into the textures of the objects, which are the patterns, colors, and designs placed onto the actual 3D model.

Process

Here’s the default scene with nothing but a directional light (mimicking the sun).


First, we replace the skybox with a solid color, add some fog of the same color so that the two blend together well, and change the color of the directional light to match better with the new colors.


Next, we add some real-time lights to the scene so we can mimic objects like lamps.


Now we set the ambient lighting, the lighting coming from the skybox, to baked and bake all the lights in the scene. Also, we’ll add the character.

Looks pretty much the same, but now it’s more optimized. You can also notice that Ausha looks a little strange while in the shadows. To fix this, we add light probes to the scene to store light data in open space for non-static objects like Ausha to use.

This is just a test scene, but this is essentially the process we will be using for the final game. Until next time.

-Behind You

14: Ausha

Hello folks,

Since the inception of Small Hours last fall, our team has been hard at work making a lot of  progress on the game.
Notably, on the art side, the main protagonist has been translated into 3D.

If you don’t remember, this is what the final design looked like last fall:

smallHours_conceptArt_Kid_tpose_1
Ausha – Design

In order to maintain a similar cartoon spirit that is in-line with the original concept, we opted to keep a graphic, lineart-style texture on a low-poly model.

Now, this is what she looks like in 3D.

Everyone, meet Ausha:

 

 

Ausha - Front
Ausha – Front
Texture_Ausha_back
Ausha – Back
Texture_Ausha_UV
Ausha – UV

She has even been rigged!

Rig_Ausha
Ausha – Rig

Currently, she is in the process of being animated.

We will be sure to post more updates as the animations are completed, so you can see her come to life.

See you soon,

-Behind You