Out Of Bounds Games

Out Of Bounds Studios is a small game studio led by Alexander Birke. I aim to create games with novel mechanics that bring players into new exciting unexplored worlds.

Sehr Cool! Laser Disco Defenders will be at Casual Connect Berlin!

Hi there! A new year is upon us, and with it the tradition of doing resolutions for the coming year. One I have for Out Of Bounds Games is to go to more industry events. It’s a great way to promote the work you do and get inspired by other developers.

I am therefore really happy that Laser Disco Defenders has been selected for the Indie Prize Showcase at Casual Connect in Berlin! It takes place the 7-9 February where you can try the game along with a lot of other great indie games. Personally I'm happy to see Redout has been included as well since it made it into my top 5 games of last year. Hope to see you in Berlin!

Games I enjoyed in 2016

It has become popular to list your favorite games of the year as the last days of the year are numbered. I wanted to give it a go as well even though I didn’t get to play as many games as I wanted this year due to the release of Laser Disco Defenders. However, as a game designer and a sight impaired gamer I thought I have an interesting perspective I can add to this discussion as the year draws to a close. Here my picks are in no particular order.

Tilt Brush

Tilt Brush.png

Is it a game? Well if Rock Paper Shotgun can put it on their list so can I! This VR painting program does certainly have a playfulness to it, I haven’t found in other painting apps for my Vive. A huge reason for that is Tilt Brush is very polished. Each brush produces its own sound when drawn, which makes it feel a lot more tactile to put digital paint strokes in the open air than would seem possible. Tilt Brush is also on the list because I think it heralds how VR will be an important medium for creating games in the future.

Firewatch

Firewatch.jpg

The most interesting game with a premade narrative I played this year. I found it refreshing that you got to roleplay a more average guy and how he dealt with his wife suffering from dementia. Initially I didn’t like the ending, since I expected the Chekhov’s gun it set up to pay off, but thematically and tonally it worked really well. Some solid voice acting and very pretty visuals also helped make this game feel special.

Overwatch

Overwatch.jpg

Much praise has already been bestowed on Blizzard’s new shooter. It was by far the game I spent the most time playing this year thanks to its great game feel, and the lure of playing the multiplayer with friends. As a gamer with a sight impairment, it is also one of the few shooters out there where strong silhouettes, clear UI and color choices make the action easy to read. On top of that the diverse cast makes this one of the most inclusive games I have ever seen.

Redout

Redout.jpg

I played a lot of WipeOut Fusion on my old PlayStation 2 so I was very hooked when this popped up on my radar. I wasn’t disappointed. The game feels super fast, and using the second analog stick to control the orientation of the ship to avoid scraping against the track when it curved up or down feels great. It adds a new dimension to the zero G racing genre. The ingame UI could be a bit larger so it would be easier to read, but the track layout is clear and easy to figure out.

Rimworld

Rimworld.jpg

I have always found Dwarf Fortress fascinating, but impenetrable in terms of all the complexity you have to understand before you can start playing it. When I heard of Rimworld that takes inspiration from the former, but focuses on making it more approachable with clearer graphics, better UI and a built in tutorial I had to give it a go. I choose to start with the shipwrecked starting condition, and made the fatal mistake of naming the crew after friends. I was therefore super keen on getting my small bundles of random stats and hand picked names to escape the planet they had marooned on. This of course ended in horribly death to everyone caused by marauding manslaughtering elephants. If you like player generated narrative this one is for you.

Also I want to give out some honourable mentions to Event[0], Doom, Super Hot, INSIDE, and Steamworld: Heist which I really enjoyed this year as well

Making an entire game in Tilt Brush

Since the start of the current VR revolution I have been more interested in how the technology could be used for creating games rather than just playing them. It should come as no surprise then, that one of my favorite VR apps are Tilt Brush, the 3D painting program that allows for a completely new way of drawing that gives depth to your doodles.

I finally got my own Vive a couple of weeks ago. Since Ludum Dare was around the corner, I decided to make a game where all the art was drawn in Tilt Brush. I thought it would give the game a unique look, and also be a fast way to create 3D content, an important aspect when doing a game jam. You can find the game called The Trans-Interdimensional Laboursaving Transportation Service on Ludum Dare’s website, as well as on Game Jolt and Itch.io. I couldn’t find anyone else who had tried to use Tilt Brush this way, so I decided to write this post on how I did it and my takeaways from the process.

 
I feel like I’m being watched...

I feel like I’m being watched...

 

The setup

Turns out the pipeline to get Tilt Brush sketches into Unity, which is the engine I use, was very straight forward. From inside Tilt Brush you can export an FBX of your sketch. I thought I would have to write my own shaders, but it turned out the Tilt Brush devs already provide a set of basic shaders as well! You still have to manually assign this shader to the imported models in Unity so I ended up writing a small AssetPostProcessor script that would automatically handle this when the FBX file was copied into the project folder which made it easier to adjust the look of the game since all brush strokes of the same type would share the same material. This would sometimes still break when Unity had to split up the imported mesh because of it’s 65k vertex limit per mesh but it still saved some time. Here is the source if you want to check it out yourself.

Terrain, some flowers, and sleepy blobs painted in Tilt Brush and rendered in Unity

Terrain, some flowers, and sleepy blobs painted in Tilt Brush and rendered in Unity

What worked well

The game ended up with the unique look I was after. You can clearly see it’s been drawn by a person which I think gives it it’s own charm. So aesthetically I’m very pleased with the result. Since you can’t really animate a Tilt Brush sketch other than its rotation, scale and location I choose to make a game, where you see a lot of different static environments which worked well.

Earth, so boring

Earth, so boring

Pocket Dimension #321754-B, so weird!

Pocket Dimension #321754-B, so weird!

If you want people to play your jam game it’s a very good idea to make a build that can be played on the web. I was really surprised how compact the WebGL build was. I haven’t gotten any complaints about the game relying on beefy GPUs to run either which was a nice surprise as well.
Lastly my assumption that it would be a quick method for making art turned out to be mostly correct. Drawing the art inside Tilt Brush was quick, but there was a lot of hurdles getting it into Unity as explained in the next section.

What didn’t work so well

The shaders provided by the Tilt Brush devs only cover the most basic brushes. All the more VFXish of them such as fire, lighting and disco are not supported.  You don’t get normal maps either, so some brushes such as Ink and Oil look flat when imported into Unity. There’s also no shader to to get the non lit strokes of the Marker brush to show up correctly. I know It’s a simple shader to write, but at the end of the jam I was too sleep deprived to sort it out ,so I ended up just using the premade shaders and calling it a day.

Pattern in Tilt Brush

Pattern in Tilt Brush

Same Pattern in Unity

Same Pattern in Unity

As you can see the shape of tapered strokes also didn’t match how they look inside Tilt Brush. It’s controlled in the shaders with alpha cutoff, but there wasn’t a value that made them have exactly the same shape as inside Tilt Brush.

There’s some positive news in the horizon though! The team behind Tilt Brush are going to release a set of resources that should make it a lot easier to import your sketches into Unity in the near future so really looking forward to give that a go.

The other main hurdle is that Tilt Brush is really more geared for sketching than for actual content creation. It’s designed to be approachable and playful to interact with. As a result it doesn’t have many of the features you would expect from a program appealing more to professional users. For example you can’t group your sketch into layers making it tricky to delete strokes. The biggest issue though was not being able to set a custom pivot point for exported drawings as shown on the picture below.

Tell me of the pivots of your homeworld Usul

Tell me of the pivots of your homeworld Usul

I compensated for this the standard way with using a GameObject parent as the pivot in Unity, but it was something that I had to spend more time on than I would have liked. Other

features I could also have used, was to just export a part of a sketch and overwrite existing sketches from inside Tilt Brush. Tilt Brush has never crashed on me but I didn’t want to take any chances so I saved fairly often which filled up the gallery really quickly.

Where Tilt Brush also excels is really in creating organic shapes with free hand brush strokes. My concept relied on creating a bunch of objects with harder edges which proved to be fairly time consuming. There is an option to use a straight edge tool, but it took a lot of trial and error to get the stroke orientation correct.

I spent way too much time on drawing the hard edges of the box the player is placed inside while playing the game.

I spent way too much time on drawing the hard edges of the box the player is placed inside while playing the game.

Conclusion

I really enjoyed making the art for my game with Tilt Brush. Even though getting the sketches into Unity isn’t a perfect process yet it was already a very powerful and quick way to create 3D content. With the new tool chain promised by the Tilt Brush devs on the horizon it will only get better. Next time I’m doing a 3D entry for a game jam I’ll likely use this approach again.

PS!
I’m planning to organize an online game jam for making games with Tilt Brush around February next year after the new tool chain has shipped. If you think that would be awesome to participate in follow me on
Twitter or Facebook to stay tuned!

Synth Rider - Abstract Racer With Changing Aspect Ratio

Had a lot of fun organizing and participating in Absurd Aspect Ratio Game Jam over the weekend. I was joined by Daisy Spiers, Jamie Lewis, and Josh Palmer. Together we made Synth Rider, an abstract racer where the aspect ratio changes to frame the gameplay, inspired by synthwave and the 80s. You can play the game here https://gormless.itch.io/synthrider-absurd-aspect-ratio-jam…

It was the first time I made a game in Unreal and it was quite interesting to see how the engine differed from Unity which is the engine I normally use. I plan to write a blog post on my first impression on Unreal for other Unity devs to learn from.

The lighting system in Laser Disco Defenders

Hey so Laser Disco Defenders is now out on Steam and in fact it’s also getting a physical release!

One very happy game developer

One very happy game developer

Now where the game is out I thought it would be interesting to go more into detail with different aspects of how the game was made. I will start with the custom lighting system that allows for 40+ 2D light sources even on low spec hardware. LDD was made in Unity but this approach should work in any game engine that lets you create procedural meshes.

Why a custom lighting system?

The central mechanic in LDD is that every laser beam fired keep bouncing around and can hit the player, hence why we call it a self inflicted bullet hell. Since the visual style is inspired by disco and the colorful dance floors of the time I wanted the lasers to cast light into the environment. It also has the added benefit that it hints to the player a laser is about to enter the frame before it becomes visible.

The game has also been released for PlayStation Vita, so I needed a solution that was more performant than Unity’s standard deferred lighting, that incurs a draw call for each light drawn to the screen. There can easily be 30 lasers on the screen at the same time in the game so this would not be feasible to run on a handheld console. I also wanted the lighting to fit the shape of the laser beams. Since a laser beam is typically long and thin, none of the standard light types in Unity (direction, point, spotlight) would be a good fit.

To the left, using point lights doesn’t fit the shape of a laser beam very nicely. On the right you can see the desired contour of the light.

To the left, using point lights doesn’t fit the shape of a laser beam very nicely. On the right you can see the desired contour of the light.

Other parts of the game also needed to give off light so I needed a simple light component I could put on game objects that the lighting system would then render.

Other parts than the lasers casts of light as well so this needed to be supported as well

Other parts than the lasers casts of light as well so this needed to be supported as well

Procedural Meshes to the rescue

The basic idea is to use a procedural mesh to “stamp” the lighting data into a light buffer that is then sampled in shaders. This is not that different from how deffered lighting works, however this solution only needs to work in 2D so I can get this done in one draw call for all my lights at once by using a procedural mesh to draw the light.

The lasers in the game were rendered with a procedural mesh so I already had a texture lying around I could use to store the light falloff in. I call this the dum dum duum… laser sheet!

The laser sheet. The marked areas have the diffuse falloff used for all the laser lights.

The laser sheet. The marked areas have the diffuse falloff used for all the laser lights.

For a given visual type of laser I needed the lengthy bits of the laser, the end caps and the larger flare that appear wherever they hit a wall. On a side note those flares are there to hide that each beam segment are just rendered out as a simple quad strip so they don’t overlap very nicely. It’s a bit of cheat but it works visually as well.

Diagram of how the mesh was generated for a single laser. Each segment needs a quad for each end and a quad for the straight segment in the middle. The light from the impact flare needs it’s own quad as well. This is the same topology used to draw the laser itself.

Diagram of how the mesh was generated for a single laser. Each segment needs a quad for each end and a quad for the straight segment in the middle. The light from the impact flare needs it’s own quad as well. This is the same topology used to draw the laser itself.

For creating the light for each laser I take the positions of each segment and expand their vertices outwards based on how far the light from the laser shall reach. Then other light sources have their vertices created and added to the mesh. For LDD I only needed circular lights but other shapes could easily be added as well. These circular lights use the same diffuse flare from the laser sheet and are rendered out as quads.

For creating the light for each laser I take the positions of each segment and expand their vertices outwards based on how far the light from the laser shall reach. Then other light sources have their vertices created and added to the mesh. For LDD I only needed circular lights but other shapes could easily be added as well. These circular lights use the same diffuse flare from the laser sheet and are rendered out as quads.

For creating the light for each laser I take the positions of each segment and expand their vertices outwards based on how far the light from the laser shall reach. Then other light sources have their vertices created and added to the mesh. For LDD I only needed circular lights but other shapes could easily be added as well. These circular lights use the same diffuse flare from the laser sheet and are rendered out as quads.

The mesh is then rendered into a separate color buffer. In Unity I did with a camera that has the same position and size as the main camera. It then renders into a RenderTexture using layers to exclude everything but the light mesh.

The light mesh and the texture it’s rendered into.

The light mesh and the texture it’s rendered into.

This color buffer was then sent to the GPU as a uniform texture so it could be used from any shader. Custom shaders were created for sprites, particles and anything else that needed lighting. In the vertex shader each vertex is also assigned it’s viewport position so that can act as uv coordinates when sampling the light texture in the fragment shader. The backgrounds in the game are the most interesting. Here the alpha channel is used to determine how reflective a given texel is. This helped a lot with adding more depth to the game.

Example of a background texture in Laser Disco Defenders. To the left is the color channels and to the left is the alpha channel used for reflectivity which allows for dark crevices in this cave texture. There’s also a space whale skeleton because… we could!

Example of a background texture in Laser Disco Defenders. To the left is the color channels and to the left is the alpha channel used for reflectivity which allows for dark crevices in this cave texture. There’s also a space whale skeleton because… we could!

Optimizations

The system features a couple of optimizations. The main one is frustum culling each light source before the vertices for it is created. This both reduces the amounts of CPU computations needed, and also limits the amount of vertices that has to be streamed to the GPU. As you might be able to see in the above GIF the light buffer is also at a much lower resolution than the game. I found I could reduce it to be just 10% the size of the game’s resolution without having any artifacts. When the texture is read in the shaders bilinear sampling gives enough interpolation for this to still work out. This reduces the amount of fill rate the lighting system uses which gave me enough rendering juice left to run a couple of image effects on top.

Conclusions and further work

On Vita the game hits very respectable frame rates which is something I’m quite proud off given the visual fidelity of the game. The good level of performance has also been noted in PC reviews. As you can see below the lighting adds a lot to the psychedelic disco vibe of the game.

Lights on, lights off

Lights on, lights off

Some current limitations of the system is that it doesn’t support shadows. This is something you can likely add in with a cost to performance . If you want shadows it will also mean you probably can’t do the trick with the low resolution light buffer. One thing it doesn’t allow for is specular reflections. This could be achieved by having another laser sheet that uses the color channels to represent directions which are then stamped into a separate direction buffer but this is beyond the scope of what I needed for Laser Disco Defenders.

I hope you enjoyed the article. Next post will go more in depth with the procedural level generation so stay tuned!

Laser Disco Defenders is out in Europe And America

Laser Disco Defenders has launched on Vita! It’s been a lot of hard work to put this crazy concept together so it’s great to finally see it out so people can play it. You can get it on PSN here.

So far the coverage has been a lot better than I expected. It’s been reviewed a lot and was even on UK television! Some of the reviews offered some valid criticisms of the game and I have started to address those. Expect a blog post next week that goes into detail with what I am doing to address those issues. If you

American release of Laser Disco Defenders postponed by a week

Hey Alex here with a quick update on the release date for Laser Disco Defenders. Excalibur Publishing and I have had to postpone the release of the game with a week for the American territories so it comes out the 2nd of August due to an unforeseen technical issue. On the positive side we can confirm that the game will have a 50% discount of the full retail price of $9.99 for PS+ members the first week with cross buy for the PS4 version as well.

We are sorry to disappoint you if you have been looking forward to buying it but we hope the discount makes the wait worth it. I’m really looking forward to the release myself and can’t wait to hear what people think of the game. So far the game has been covered by Kill Screen and we have had more journalists calling and being interested in the game than I was hoping for so it’s really exciting to see how it will be received!

LDD Dev Log 4 – How We Design The Characters

Hello! This is Daisy Spiers who’s doing all the pretty pixels for Laser Disco Defenders. I’m going to write a bit about my process for designing the main posse in the game.

First off Alex sent me a copy of his style guide which was invaluable for getting me on the same page as him. He also told me that each character needed to be distinct, have their own colour and look like they are part of a team.

Before even looking at a piece of paper I set about doing my own research and image gathering. It’s important to gather material from different sources and not just from the medium you’re creating art for. Of course it’s easy to say that for space disco, but it’s not uncommon to fall into the trap of just looking at other games for inspiration.

To get myself into the zone I took on the immense task of listening to disco 24/7 whilst watching cheesy, budget, 70s sci-fi flicks. It almost drove me mad, but it had to be done, for the sake of the mission. Gathering up pics into a pinterest board has been super helpful to refer back to when needed, and gave me something to send to Alex to make sure I was still on the right track.

So with disco now taken up residence in my brain I could confidently start sketching out some ideas. There were a few of things I kept in mind throughout:

  • Keep it simple – from playing Alex’s build of the game the characters would be quite small on the screen, so small details would likely be lost
  • Distinctive silhouettes – to make them stand out from the other characters as well as distinguish players from enemies
  • Diversity – disco was enjoyed and created by a wide audience so I wanted the characters to reflect that, as well as help differentiate the characters from each other
  • The cheese element – this is 70s disco sci fi, it’s important to not take things too seriously and keep it light and fun

Initially I started out drawing Tommy with the aim that he would be the ‘leader’ of the Disco Defenders. I didn’t see how a moustachioed, leisure suit wearing fan of Saturday Night Fever could be anything but, especially since he was descended from Alex’s placeholder.

Pic2.png

However, that was until I started sketching out Mr Baker, who had a tonne of personality from the get-go and stood out with his rather angular afro. People who saw the concept art assumed he was in charge so he naturally became Captain.

After approval from Alex I moved on to sprucing up the designs.

Liz underwent the most changes out of the four. I didn’t have a solid idea for her in mind other than she had roller skates as a reference to roller disco. Alex suggested making her a young girl in contrast to Donna, and also decided against having long flappy pigtails since they would be difficult to animate in the game.

I had a basic shape in mind for each character for me to try and incorporate into their design and silhouette, so Liz was eventually assigned a triangle which brought me to a design both Alex and I were happy with.

There’s not much evidence in these pictures but I would very much recommend numbering your sketches before sending them off for feedback. With some of my earlier drawings I neglected to number the designs and there were some mix ups in regards to which designs were being talked during feedback.

Apart from Liz the rest of the designs mostly stuck so it was a case of tidying up, refining the silhouette and trying out a few variations. It’s not a process that’s completely straightforward, sometimes I would try out several variations to improve part of the design, only to arrive back at what I had originally drawn (for example Mr Baker’s helmet went through tonnes of versions only to end up hexagonal again). It’s all part of finding out what works and what doesn’t though; even if you feel you’re going backwards there’s still progress being made.

However if all else fails just add googly eyes, it’ll be a laugh at least.

If you want to check out some more of my art you should check out my portfolio. Thank you for reading!

LDD Dev Log 3 – Optimus Con and the value of showcasing at smaller events

This weekend my artist Daisy Spiers and me went to the Optimus Bristol Comic Con to showcase Laser Disco Defenders. It was a lot of fun and because LDD was the only game being showcased there we had an easy time attracting people to our booth. One thing that was especially cool was a lot of parents were glad to see a game that could appeal to both their boys and girls. In the end we had over 180 people play the game and handed out 200 flyers, which for a small local event I was very happy about.

The first step in getting people to come over to your booth is to make it visually interesting, so Daisy and I spent a couple of hours on Friday building some eye catching disco pylons out of a pair of disco balls, card board and tin foil. Together with some shiny gold table cloth and a roll up banner we ended up with a pretty nice looking booth that wasn’t too expensive.

Going to events isn’t cheap, but if you can find some close to where you are based it can be a lot cheaper since you don’t have to pay so much for transport and accommodation. Here’s a quick rundown of how much money we spent:

  • £95 to rent the booth
  • £35 on the roll up banner
  • £28 on cards we could hand out to people
  • Around £50 on our amazing disco pylons and £10 on table cloth
  • About £80 on cab fares. This was a lot more than I expected but given the poor bus connections to the venue I decided it was worth it.

On the first day of the event we also found out the laptop the game was running on was about to melt down, so I had to get a cab back to our office and grab another machine to run the game on. A mistake I plan to avoid by testing the setup the game will run on better beforehand.

Having an extra person at the table was really helpful. Showcasing at a convention is a rewarding but tiring experience, so having an extra pair of hands made life a lot easier for taking breaks, grabbing food and talking to people when the booth got busy.

LDD Dev Log 2 – The Inspiration for the game

Hello dear readers. For this second dev log on Laser Disco Defenders I am going to go into more depth with what inspired the gameplay, design and overall aesthetic of the game.

Do Your Research

When I was a kid I read an interview with Carl Barks, the cartoonist who created Scrooge McDuck. It fascinated me how many different and creative locations his story always took place in and as he explained in that interview it was all down to first researching the area or subject the story was about. Whenever I start on a new project I therefore spend a lot of time on research.

Music Videos

Okay so this is a spoof of Space Disco/Techno but the first time I saw Zlad a couple of years ago I knew I had to make a game this kind of crazy and silly mood. It’s in all likelihood what inspired me to theme the original jam prototype around Disco. The crazy thing is this is a parody and it’s not that far of from what Space Disco looked like! Here’s Zlad:

 
 

And here’s a live recording of the french group Rockets!

 
 

The costumes in Sarah Silverman’s video for “I Lost My Heart to a Starship Trooper” are also pretty hilarious.

 
 

What I love most about these music videos is how sincere these people are about wearing silvery glittery outfits and singing about space, well except for Zlad of course.

Movie & TV References

Soul Train was a TV show that throughout the 70s covered Disco music and played a big part in the culture surrounding it. It inspired some of the outfits and animations for the characters in the game.

 
 

The sci-fi space opera influence was mainly derived from watching trailers of late 70s sci-fi movies. I didn’t pick Star Wars simply because it’s too much of a thing on it’s own but there was a lot of hilarious knock offs that came out in it’s wake that was worth taking inspiration from. Most prominent is Star Crash who starred no other than The Hoff!

 
 

In Buck Rogers, arguably the space opera most inspired by disco, they even have this scene were everyone is dancing with disco balls on their hands:

 
 

Visual References & Mood Guide

Besides videos I also scoured the internet for images I could use to convey to the people who would do the art and music for the game. All of this was put into a mood guide so I could easily explain to someone what kind of mood I was going for by sending them a link to that document. This turned out to work really well so it’s definitely something I will do on my next project.

LDD Dev Log 1 – Laser Disco Defenders Announced!

>>>> INTERGALACTIC TRANSMISSION INCOMING <<<<

I’m really excited to announce Laser Disco Defenders, the first title from Out Of Bounds Games. If you are in the mood for some groovy disco beats set in a cool retro sci-fi setting with procedural levels and an interesting twist on the game mechanic of shooting then this is the game for you! Check out the trailer below:

 
 

I have been working full time on the game for about 6 months now and it’s been a lot of fun and full of challenges as well. Where a lot of indie developers are embracing the trend of publishing their games themselves I decided that I wanted to find a publisher for the first game I release. The reason for this was that I’m not yet known so I can’t use the reputation of my earlier games to promote new titles I work on. As such I spent a lot of time pitching to publishers last year and have now partnered up with Excalibur Games to help bring this crazy genre mix of a game to life.

To help me out on the art side I have the talented Daisy Spiers summoning spectacular hues and shapes out of thin air and putting them into the game. You should check out her cool portfolio and see what Daisy is up to over on twitter. To spin some groovy original disco tunes and give it the right bleeps and bloops, Red Panda Audio have beamed in and are helping me out on that front.Over the coming months we will share more about the inspiration for the game so if you don’t want to miss anything I’d recommend you sign up for the OOB newsletter at the bottom of the site.

>>>> END OF TRANSMISSION <<<<

 
 

Copyright © Out Of Bounds Games