Mimic 3D reboot

After not having played around with Mimic for many months, and with GameCity coming up (now in the past), I started thinking about how to solve the overlap issue and how to move the project forward. I was suddenly struck with the idea that maybe changing the project from an isometric 2D game to an isometric 3D would solve it with some simple code redesign. I set to work, and after roughly two nights worth of coding and testing, I had a working 3D version of Mimic. It worked! The overlap issue was gone!

The first step was to step up the scene.

Setting up the scene

This involved some very simple 3D modeling and scaling apropriately.

Testing with multiple characters

Testing with the existing code, the characters float away, which won’t do. Some tweaking to the spawn code when in 3D mode fixed this.

The next step was to add shadows, which was suprisingly hard. The environment is 3D, as is everything except the characters, which are 2D sprites. After looking everywhere I got some advice on twitter from the tag #gamedev. Apparently, if you go into Debug mode in the Unity editor (top left next to the lock icon), you can then set a sprite to cast shadows and receive them.


Tweaking the strength of the sun, we get:

Nicer shadows

This is basically all the work I did before GameCity. More updates will be coming!


Obscurus playtesting + Swedish Game Awards Conference reflections

The SGA Conference

This weekend, I attended the Swedish Game Awards Conference. Traditionally, the student game competition was held at my school, KTH (Royal Institute of Technology in Stockholm), but this year it was held by Södertörns University. While it was refreshing to move to a new venue, I feel that the organizers had a bit of trouble during the weekend. The schedule of talks was constantly getting changed, being pushed back or cancelled. The lectures themselves were really great, and I was pleasantly surprised by the amount of female game developers that were holding talks, especially as it was International Women’s Day on Saturday.

Student showcase

This year was the first to include a student showcase, where students get the chance to show off their projects. I chose to showcase Obscurus, and overall it went pretty well. The demo poltergeist struck, halving my framerate for no reason from when I tried the game at home. This meant that instead of a framerate of around 45, it was closer to 20. Despite this, a lot of people were interested in trying out the game, and I got a lot of valuable feedback, both verbally from the players but also from observation.

Obscurus first venture into the wild

Obscurus first venture into the wild

One interesting fact was that the labyrinth was too hard to navigate for a majority of players. Only 6 out of 27 players were able to make it to end. Every person commented on the low framerate, and most commented on the high mouse sensitivity. Luckily, I got some help from a friend at the event, and I have since fixed the sensitivity issue, and he’ll be helping me in the future for a smoother camera as well.

In other news, I’ve decided that I am giving Obscurus 2-3 more weeks before SGA, so that I can focus on other projects and contrinue to try to get thesis work.


Obscurus | Adding new assets

I’ve been hard at work for the past two days creating new assets for Obscurus. I’m trying to evoke a 70’s hotel that you’d see in movies like The Shining or that one episode of Doctor Who. I’ll let the images speak for themselves.

I’m still in the process of cleaning up the textures to make them seamless, as well as creating doors, lamps, and an intercom system. Once they are all done I hope to share it with you. Also, you can follow me on Twitter @BinaryLegend to get more timely updates.

So my first update video for Obscurus is done and posted over on my Youtube channel. It features the original alpha design that can be seen in the banner. I was happy with this design at first, but after user testing, and realizing that most people who’ve played it want to play again, I decided to redesign the level with occluders in mind.
I was also, foolishly, limited by the stationary that I used to design the first level by hand. I used a small A5 notepad with squares, instead of an A4. This meant that I was rather limited by the page dimensions, and couldn’t make the experience as intertwined as I wanted. An inspiration for Obscurus has always been the fantastic indiegame Antichamber by Alexander Bruce, and as such I wanted the player to be able to come back to the same room again, or miss a whole bunch of rooms if they weren’t watchful enough.
The video also shows my first experimenting with the Oculus Rift version. As you can see, I’m still having trouble with the shadows, so I had to turn off all lights except for the sun to make it at least bearable. I hope to keep contact with Bitsquid to try and sort out this inconvenience.

Bitsquid | The Bitsquid tool center and asset pipeline

Over the past two days I’ve been working on a video for some master thesis proposals. One of these included adding lots of new assets to show how the Bitsquid pipeline worked. I figured that I could go through the same steps here, to show those who haven’t worked in Bitsquid how it works.

To start out, this is what the Bitsquid toolcenter looks like:

It’s very Windows 8 inspired, and while I first disliked it, with each tool being separated, I soon learned that this is actually a positive when it comes to games engines. In other engines, like Unity which I have the most experience with, everything is available from the main editor tool, and code is handled in a separate part. This means that all your tools are in the same place, and it’s easy to get lost, be flustered by all the possibilities, or accidentally do something you didn’t mean to.

In Bitsquid, this is not the case. Every tool is separated out, so you only ever need to work in one tool at a time, and it’s also easier to spread out your tools on multiple monitors, as most game developers tend to have. The beauty in this is also, that thanks to the data driven design of Bitsquid, by editing an asset or code in one window, it updates it in the level editor or running game, depending on how sensitive the given asset or code is. You can even change the shader code midway through playing a level, which is very cool.

Asset pipeline

So back to the matter at hand, I needed to integrate art assets from other sources to show how easy it could be. I got some free 3D models of weapons from TurboSquid. I then proceeded to import them into Maya, as that is my preferred 3D modelling tool, and Bitsquid provides exporter tools for most Maya and Max versions. This is necessary, as Bitsquid uses an internal file format for assets called Bitsquid Intermediate, or .bsi for short. This file format is what allows the speed and data driven approach to work. Importing and exporting the models is fairly simple. Once you’ve placed the appropriate exporter tool in the plug-ins folder of your modelling tool, you can export your models.

Once this is done, and you’ve placed your model in your project folder, you need to start up the Unit Editor tool. No select “New Unit From Mesh”. A window will appear will all .bsi files in your project that haven’t been assigned units. Selecting one, you will now be able to create physics actors, occluders, shadow meshes, LOD steps, and so on. Once you’re done with that, save and exit the tool.

Next we need to import your textures. Bitsquid takes the dds format. As I use Photoshop, I found Nvidias texture tools plugin very useful, which can be found here. When saving your textures, make sure they are in a multiple of 4, as Bitsquid only takes this size. Also make sure to use the ARGB unsigned format.

You can generate the mipmaps directly, or let Bitsquid do it for you later. Now that you have your textures ready, start the Texture Manager tool. Much like the Unit Editor, if you select “New Texture from DDS”, you’ll get a list of all the dds files that aren’t assigned as a texture yet. Once you’re done, save and exit the tool.

Next we need to assign all those fancy textures you just created. This is done in the Material Editor tool. Now this is where Bitsquids design comes to the forefront. If you have a window with your asset visible, like the Unit Editor or Level Editor, you can now see the changes your material make to the asset, live! In this way, you can tweak the specularity so it shines perfectly, see that the transparency works as you intended, and so on. In effect, you get something like the image below.

And now you’re done. You’re asset is in the game! I hope this short tutorial helped you!