GDC Talk, Portals, and World 002 WIP

The GDC talks from this year have finally been uploaded to the vault. Some of the talks you need a vault membership in order to access.

Fortunately, my talk, “Level Design in Impossible Geometry” is up on the vault for free.

level design with impossible geometry


It covers my approach to designing levels in Manifold Garden, and goes into detail of what impossible geometry is. I explain how to image world-wrapping in 3D, and the talk also has some general guidelines that I’ve found to be useful when working with really confusing geometry.


We finally have portals working in the game now! Well, technically, I had portals about 2 years ago, but the system has been completely overhauled. It ties together with level loading, so is an incredibly complex system. David has been working on it for the past several months. It’s still not complete yet, and there’s still a lot of problems, but it’s really awesome that a basic version is now in place.

This is a significant milestone because portals are the glue that hold the levels together. I’ve mentioned this before, but in the game, there are no loading screens (aside from the first one), and no level select menu. The entire world of the game is seamlessly connected. However, up until now, because portals were not in place, each area had to be tested separately. I could not test for puzzles that took place over multiple levels. I could test for intra-area puzzles, but not inter-area puzzles. Now, with basic portal functions, we can start testing the game as one continuous flow, which is very important.

To connect the portals, David made a great tool, the portal path maker:

portal path maker

Each node is a level, and inside the node is the portals that are contained in the level.

To connect two portals together, I simply need to click on one, and then click on another. The lines show the connections between the portals, which is very useful.

Portal design:

The first version of the portal looked like this:

Portal Going Through

It was similar to the way the portals are in Portal. Stepping through it took you from one world to another.

However, I didn’t really like the way this looked. Looking into the portal, if the other side was a room similar in size to the room you’re currently in, the perspective didn’t look to be that different.

Plus, there is the issue of the edge detection shader picking up the edges of the render texture:


Note that the other side of the portal has the shadow all screwed up. This is apparently a problem on Unity’s end when doing with the particular view matrix being used here. Supposedly it will be fixed in Unity 5.5, so going to wait to upgrade to that.

Here is the new portal design:

portal going through wormhole

The black zebra stripes were initially placed there to deal with the edge detection issue. The black material covers up the edges due to the render texture, and makes it feel seamless. The stripes also really stand out – the pattern is never seen anywhere else, and it’s a very striking effect when walking down the tunnel. Plus, the tunnel view really enhances the difference in perspective of the portal when looking through it, the sense that there is this other world and the geometry is bizarre.

Right now the tunnel is actually it’s own separate scene, but I think we can make it an area in the same scene (just far enough away that the player can see it), so that the portal into it is an intra-level portal, as opposed to an inter-level portal. It may give us more breathing room in terms of loading and unloading levels.

Loading Percentage

loading percentage

Another really cool feature that David added is that the levels are now enabled or disabled in piecemeal, instead of either being completely on or off.

In the above picture, you are in World_001. On the other side of the portal is World_031. You can see that both levels are loaded in 100%. Both levels are actually in same spot, but the colliders for World_031 don’t get switched on until you cross over, and it is on a different camera layer.

As you step near a portal, the level on the other side gets loaded in. Right now, the condition for loading in the level is when you’re 20 units away from a portal, but this can be tweaked according to each situation.

Wold_002 Work In Progress Pics

Here are some images of the level I’m currently working on:

ManifoldGarden_2016-04-09_14-26-35 ManifoldGarden_2016-04-09_14-28-03 ManifoldGarden_2016-04-09_14-29-03 ManifoldGarden_2016-04-09_14-31-16 ManifoldGarden_2016-04-09_18-37-05 ManifoldGarden_2016-04-09_18-37-21 ManifoldGarden_2016-04-09_18-38-26


Spent the last few days staring at spreadsheets until my eyeballs felt like they were going to bleed.

Finally sent off the docs to my accountant to file taxes, so that takes a huge weight of my shoulders.

Now I can get back to actual game development!

Dark Mode Design


This past weekend, I had another Game Design Critique / Design Klub meeting. If you’re not familiar with this, it’s basically a full day game design meeting with a few other Chicago game designers. It’s modeled after the Depth Jam that Jonathan Blow had done several years ago. The first meeting was done just a little over a year ago, which you can read about it in detail here.

The specific design problem I presented to the group for Manifold Garden was about invert mode – How should the mechanic work? How to enter the mode? How to exit? What should one do while in there? What do they think of its role in the game?

The discussion was incredibly helpful and I came away from the meeting with a very clear sense of what invert mode should be. Oh, to begin with, it’s now called Dark Mode instead of Invert Mode.


I created a very specific build of the game that allowed you to mix and match a bunch of different mechanics in dark mode – reverse player gravity direction, reverse box direction, change which surface is colored, etc. This was mostly for the other designers when playtesting, so they can get a feel fro the different combinations and see which ones work best together.

Discarded Exit Modes 

Here are different exit modes that didn’t work, and why. For all these cases, you enter into the dark mode by picking up the dark mode box.

Discarded Exit Mode 1: Light Mode Box Pick Up

light mode box pick up exit


In this mode, to exit dark mode, you simply pick up a light mode box. You position is not reset when you do this, you are exactly where you are when you pick up the light mode box. However, the dark mode box is sent back to the original position.

Problems: If there isn’t a light mode box around you (which can easily happen), you end up stuck in dark mode. Also, having to search for a light mode box in order to return can be very tedious. It’s also not super obvious that picking up a light mode box will send you back to light mode.

Discarded Exit Mode 2: Continuous Fade

continuous fade

In this mode, as soon as you enter dark mode, the screen starts to slowly fade to white. It takes about 60 seconds. Once the screen is fully white, you are reset into light mode. During the fade period, you can do whatever you want.

Problems: This turns the task in dark mode to be a timing puzzle, which I don’t really like in general, and also goes against the spirit and style of all of the other puzzles in the game. Also, there is not instant exit from dark mode, which can be really annoying. If the player decides they don’t want to solve the dark mode puzzle just then, they have to wait around for the fade to complete, which can be really annoying. The timing also puts a constraint on how complex the puzzle can be unnecessarily.

Discarded Exit Mode 3: Falling to Fade

falling to fade

In this mode, in dark mode, world wrapping is disabled. You cannot see other instances of the world. When you fall of the world, instead of being wrapped around, you just fall into the abyss. The screen then starts to fade to white, and you are reset into light mode.

Problems: This removes the visual of repeating worlds, which is a big loss, and also doesn’t allow players to jump off and wrap around, which is one of the coolest parts of the game. This also makes level design in dark mode incredibly difficult, because I would need a continuous path from “bottom” of the level to the “top”, which is not at all how the level is designed for light mode.

The Mode I Decided To Go With

drop box to fade

In this mode, in dark mode, when you drop the dark mode box, the screen begins to fade back to white. It’ll take about 2, 3 seconds to fade completely to white, at which you are set back to light mode. However, as soon as you pick up the dark mode box again, it reverses the fade and you are back in dark mode. If you want to return to light mode, simply drop the box.


Tree Band Problem

David fixed the issue with the floating branches when you merge the tree. Mostly it had to do with getting quaternions right to handle the correct rotation.

We had another problem though, with the bands on the tree:


These are only supposed to appear at the base of the tree to indicate how many fruit cubes grow from it. I think Chris wrote the script so that it should only go on the trunk part, which should be separate from the rest of the tree.

Anyway, right now it is getting applied to the entire tree.

Press / Wallpaper Auto Cycle



Check out this interview with Jonathan Blow on Giant Bomb because

1) The Witness is going to be awesome!

2) At the end of the interview (47:00 time mark), Jonathan is asked:

What was the last game you played that you feel “This has something”.

Jonathan responds with Miegakure and Manifold Garden! He says “it feels like a game that really knows what it wants to do” and “just goes straight there and doesn’t mess around with other things”.

Wow! Incredibly honored!


If you can read French, IndieMag wrote about Manifold Garden!


Très franchement, nous sommes particulièrement emballés par ce jeu aux “géométries impossibles” et soyez certains d’être les premiers informés dès la mention d’une date de sortie pour ce Manifold Garden !

Merci beaucoup IndieMag!

Manifold Garden Wallpaper Auto-Cycle

Ever wanted to automatically fetch and cycle through Manifold Garden images for your wallpaper? Now you can!

Thanks to @pkqk, there’s now a shell script to automatically fetch images from the Manifold Garden tumblr page and cycle through them as your wallpaper.