Hey everyone! So a lot of people expressed interest in me doing a breakdown of the art for our game Jeff From Accounting and I figured I'd do just that. If you haven't played our game yet, please play it before reading this. I promise it's worth it!
A quick thanks to our coder Aaron (@almax) and our sound engineer Dale (@dale-smith), without them this would have just been a very stationary and silent pile of geometry.
Aaron (@almax) has written a design/code retrospective. You should check it out here

I was asked a few times by friends and people on twitchchat, "Did you make all the assets in the game? Also, when was the last time you slept? you look awful." I did make all the assets, and a lot of people expressed interest in an art breakdown. So here it is! Buckle up, it's quite long.
Early in the jam I decided this was going to be a 3D game and I roughly knew what sort of theme we were going with, it was a typing game. So an office theme made sense to me, the 60's-70's retro vibe was added because I thought it would be fun (spoiler, it was fun). I've never made an FPS before, so I was a little nervous and decided that I needed both a large amount and reasonably decent looking assets. Which is obviously difficult, but we found interesting ways to work around it.
The main software I used to create all of this was 3DS Max and Substance Painter. I did use a little bit of Photoshop here and there as well.
Tileable Textures
One of the first steps I took was creating a bunch of tiling textures that would be a nice solid foundation for the rest of the work I was planning to do, I used substance painter to create all these. Substance Designer is the better option for doing this sort of work, but I'm substantially faster with Painter workflow and I was already panicking a little at this stage with the amount of work I wanted to get done. I learnt long ago, don't be afraid to use a tool that you are more comfortable with, even if it's not the ideal tool. Teaching yourself a tool or getting stuck in the middle of a jam is a disaster (more on that later.....).
I looked at some quick reference, of decor in the time period I talked about, but I really didn't spend long on these assets, these were the utter bare bones. It's important to look at reference or have an idea of what sort of palette you want to use when doing this sort of work, it's your broad brush strokes and framework. I had a really rough idea and then tweaked colour values later on as needed.
Up close view of a carpet on the left. All the tileable textures on the right.

Props and decorations
This is where I spent most of my time in the jam. Our programmer Aaron had the idea of reusing the props as enemies, this (genius) decision essentially halved the amount of work I had to do! I could focus entirely on the prop work, I even decided I wanted to dress the final room in a Cathedral-style, using office props in weird and twisted ways to build a surreal world. These decisions are probably the sole reason our game looks nice. Reuse of work and planning go a long way!
Every prop in this room has already been used in a previous part of the game. It's my least favourite part of the game, but that's mainly because it was very rushed.

The pipeline for the props was simple, I do a lot of hard surface 3D modelling and I'm pretty quick at it, so I knew I could just throw my body into mass production mode. I googled a big list of office props, took suggestions from the other guys and then put my headphones on and disappeared for a few hours.
I modelled a bunch of props as low as I could, optimisation was not a priority, but I didn't want to break the game as I knew I'd be duplicating a lot of these props later to create the final room. I used the high poly model to give me a nice smooth edge with a chamfer as well as additional detail, but the most useful thing was using Substance Painter's material ID colour. I was able to create a mask by using a coloured high poly model. I could then use this mask to quickly isolate different areas of the model for different materials, for example 'red' could be 'metal' and 'blue' could be 'wood. I highly recommend looking into this workflow if you are a 3D artist.
A close up of the filing cabinet asset in Max and then a selection of the props that share the same texture shown in substance painter

The UV maps were mainly automatic and terrible, but it was fast. I made sure to batch groups of objects onto one texture. Ensuring you don't have a unique texture for every object in the game is a good way to make programmers like you. I roughly floated around 1k-2k in size for most of the textures, we could have probably gotten away with smaller looking back.
Textures of a group of props that share the same material

Level creation
I ran out of a lot of time making the final room, but the starting room and coridoor ended up looking quite nice. The whole thing is essentially one big mesh that I sliced up in Max and then imported into unity. I used a similar method that I talked about previously and applied colours to different areas of the mesh, then swapped out these colours for different materials within Unity. This allowed me to really quickly knock together and iterate levels in Max. I'm much faster and have more flexibility in Max compared to building the level within Unity. It meant I took on the role of level designer, but my team seemed confident enough in my ability to knock something up. Either that or they were too busy to care.
Learning to make these calls is vital early on, know your strengths and the strengths of your team and tools.

Lighting
Lighting is the thing that can make or break your game visuals. A strong base of good textures and level design is required, but lighting really is the icing on top of it all. I had not used Unity's light baking system before, I had planned to last weekend before the jam (I was heavily pushing to do an FPS before the jam and wanted to try out Unity's lighting), but ended up in hospital getting my appendix removed. So I gave myself a crash course on Monday evening and made a lot of mistakes. I highly recommend any 3D artist reading this to learn about baked lighting and post processing in whatever engine you are using. I also highly recommend not getting appendicitis and trying to learn the lighting system on the last day.
The same room with and without baked lighting. The image speaks for itself on how important it is

The player/weapon
My favourite thing in the game is the gun, 'The Punctuator' (shoutout to Gram for the name). A lot of the assets I built were set in reality, but this gave me a chance to play around with something a little more fun. However, as much as I love it, I get a little sad looking at it. I had so many plans for how the gun was going to look, but ended up with only about 30-40 minutes to texture it in the end. It turned out alright, but I wanted so much more. I very well might go back and create a full model of the gun for fun after the jam.
The Punctuator, when a typewriter and a cannon love each other very much, this abomination is born.

We made a lot of bad calls during the jam, as you do under pressure. One that I'm glad we didn't make was animating player hands. At the very start we seriously discussed visible player hands for sexy reloads, but it would have been insane to try and do on top of all the other work. I honestly think the game would have been much worse for it and it wouldn't have made that much of an impact. In fact, not a single person mentioned that it was just a floating gun.
I tried to make the animations fast and exaggerated. The flow of the combat in the game meant that a lot of time was spent looking at the enemy, raising the gun, typing the word, lowering the gun and finally shooting. I didn't want to add to this already slow process with a slow animation. It needed to be snappy, responsive and satisfying.
This is all the animation done within Max, all other animations in the game were done in Unity. A good mixture of both animation systems worked well for our game.

Hacks, mistakes and silly things
My assets generally degraded in quality as the deadline approached, in fact running through the level, you can tell I spent a lot more time designing the first half than I did the second. If you looked through my Max assets you would also see a shameful display of 3D modelling as time got short and I stopped caring about my modelling practices and switched to 'throw anything in the game' mode.
My favourite hack of this jam was an issue I had with the windows. I wanted windows, it helps makes the level feel more real and adds some really nice lighting that isn't just a ceiling light. However, I didn't have the time to create an outside scene or some parallax effect to fake an outside scene. I decided blinds would be the easiest option and I could still get some cool shadows. I put in a light and built up a fake exterior to block the light. Everything is looking great with the dynamic light pre-bake. Turns out that static geometry always blocks baked light by default in unity, so all my blinds don't allow any light to pass through, leaving my entire scene dark post-bake. To work around this, I slice out the windows, import them as a separate mesh, set them to dynamic and rebake. It means the windows ended up not being included in the light bake and were pretty awful looking, but I think I got away with it.
The windows look pretty bad up close, but the shadows added so much to the drama of this scene.

There were a few assets I ended up wasting a bit of time on as well. I made a pencil holder, an awful looking one. That easily cost me half an hour if not more. I also made a full water cooler that I then threw out. I wasn't happy with the transparent top, and I don't know enough about Unity to create a nice material without a fair bit of work (I would have given it a go in UE4), so I didn't use it.
This one didn't make the cut of the final game.

I also spent a fair bit of time texturing the clock that can be seen in Jeff's office and then later in the main room. This was originally our end game boss, but time took it's toll and it was dropped. You can still see it clearly placed at the end of the room, ready to be a boss. The music used in the final room was originally the boss music, you can hear the bong and tick tock of the final boss that never was.
Thank goodness we didn't name it, I'd be even sadder if it wasn't in the game.

Conclusion
This was one of the most fun jams I've done in a while, I was worried I wouldn't be able to take part in the jam last week while in hospital. The fact that I was able to not only able to take part, but make something that I genuinely enjoyed playing, really put a smile on my stupid face. The kind words everyone has said about our game so far has been massively appreciated by the whole team.
I hope that this breakdown is at the very least interesting, if not useful. Any devs that would like any help, advice or maybe just like reading my terrible attempt at writing, feel free to follow me on twitter @HeyImGreg or contact me through it.
It's been such a blast, it really has. The other games I've seen on here have been fantastic as well. I've probably missed out so many things that I meant to write about, but I'm tired and the weekend is blur.
Cheers,
Greg