Miegakure is coming along great. All the puzzles have been done for almost a year now. I have polished many parts of the game, in areas such as graphics and sound, but a few more remain.
As an example of polish, I recently improved the lighting, which was difficult because the game is so dynamic it is not possible to precompute in advance where the light bounces, as most games do. I came up with with a novel way to do it and looks amazing and I can't wait to show it soon.
The largest task for me personally now is to go through the remaining levels and place objects and generally make them look as pretty as the levels we have shown so far. I get to make more cool 4D objects too, which I also can't wait to show. I have a few videos planned on them and other things.
By the way, I recently noticed the Miegakure videos have been viewed over a million and a half times! This makes me happy because even though the game is not out yet it has already done a lot of good for the world, with hundreds of people saying the above video is "the best explanation of 4D they have ever seen." Not many games have trailers that stand on their own as useful things. It's also good because a lot of what I say in the videos cannot be said via the game, because games should mostly teach non-verbally, so they are complementary.
To the people who have been waiting for a long time, thank you for your patience. I am making sure the game that comes out will be accessible and beautiful so that more people can experience how amazing the concept of 4D is.
I will do a bunch of blog posts in the next few weeks, talking about the lighting, the world building we have been doing, etc...
We are working on making every level in the game beautiful right now! Here is quick nice-looking video to make you happy!
Old tales say that deep within the Ancient's Grove one can sometimes find scattered stone pillars, remnants of the old gods and those who worshiped them. Some people even claim they have seen stones levitate above the ground, held in place by a strange power.
But as you may start to know by now, it is not quite as it seems.
First, if you haven't seen the game yet, this video is a good introduction:
This is way to much detail and nothing explained here is required to play the game, but I still think it's really cool.
The columns are in fact spherinders, which are one way to generalize the concept of a cylinder to four dimensions.
A cylinder can be thought of as a circle that has been extruded upwards (perpendicular to the plane of the circle).
In a similar way, a spherinder is a sphere that has been extruded in the fourth dimension (perpendicular to all 3 directions of the sphere).
Depending on how you slice a cylinder with a plane you might get a circle, an ellipse (if slicing at an angle), or a rectangle (if slicing straight down the main axis). (One may also get a truncated ellipse if the slice goes through the top end of the cylinder)
Rotating a cylinder while stuck in a 2D plane
Similarly, if you slice a spherinder with a 3D plane you might get a sphere, an ellipsoid (if slicing at an angle), or a cylinder (if slicing straight down the main axis). (One may also get a truncated ellipsoid if the slice goes through the top end of the spherinder)
Rotating 3D Cross Section of a 4D Spherinder (source)
Many of the spherindrical pillars found in this grove have tilted over the ages, and so one may look at many different slices of them. The ones still standing straight will look like cylinders, but the tilted ones may look like floating ellipsoids. Look for the one that has completely fallen to the ground and hence sometimes appears as a sphere.
Concentric Spheres Carved into the Ground
While dirt and moss have mostly reclaimed the area, one can still see that around each spherinder the stone surface was carved in a series of concentric spheres. Yes, an entire 3D sphere can lay flat on the ground in 4D!
In a 3D game the ground is 2D, and so in a 4D game the ground is 3D. That means that if you are standing on the ground there are six possible directions you may go: forward/backward, left/right, and ana/kata. However, in the game, because you are only seeing a 3D slice of the 4D world, you only see a 2D slice of the 3D ground at any given time (only two pairs of directions out of three).
And therefore the concentric spheres look like concentric circles to a regular 3D person. Depending on which slice a person sees, the circles might look larger or smaller (if one takes a slice near the side of the sphere the circles will be smaller than if the slice is taken near the middle of the sphere).
Because the spherinder lies in the center of the sphere pattern, during the transition (when the character changes which way they are facing i.e. the orientation of their slice), one can see each spherical pattern “anticipate” or “follow” the spherinder that stands at its center: the circles grow larger before the spherinder is about to become visible, and after the spherider disappears the circles shrink. I think this effect looks so freaking great!
Other curious things one may find in the Ancient's Grove are blades of grass that appear to float in mid-air. This is because the point at which they grow out of the ground is out of sight in the fourth dimension. (The same effect makes certain slices of spherinders look like floating ellipsoids) Some grass bunches are more prone to this effect, based on which direction their blades tend to grow.
Seeing Inside Trees
While the character is facing the fourth dimension, they may also examine the inside of the Birch trees. This is just like how for a 2D being a house only needs four walls but us 3D beings can see inside the house by just looking at it from the third dimension.
I love how art and mathematics blend in this game!
I had meant to update the talk I gave at Indiecade in 2011, and talk more in depth about how I used these ideas for Miegakure, but in the end because of the half hour format I do not cover the first half (designing mechanics to generate an interesting possibility space) and only cover the second half (how to explore the space the mechanics create). I also talk about a bunch of game design problems that are especially interesting in the case of Miegakure. I also cut the intro a bit, but posted it Here.
A question I get a lot is: How do you even develop this game? This is related to the question: how can you think in 4D?
Personally when I approach a problem in 4D the key is to find which dimension is the least important and mostly ignore it, so I can think in 3D instead. For example to understand something about the main mechanics, I might think about the 2D/3D levels which I have shown in the trailer. In these levels, the up axis is obviously important, and the rotation is happening in the other two (horizontal) axes, switching from one to the other. In the 4D there is an additional axis, but it is not affected by the rotation of the character, so it can often be ignored.
Later, when I need to write down the 4D math for the model I was thinking about in 3D, it is often the exact same math as in the 3D case. This is because in linear (and geometric) algebra we strive to work in a “coordinate-free” manner, which means we don't write down the x,y,z, and w components of a position but rather work with all the coordinates at the same time, without needing to write them down. Any operation we do works on all the components, one by one, implicitly. For example adding two 2D vectors means adding their x and y components, and adding two 3D vectors means also adding their z components. Having an additional component does not fundamentally change anything about the operation. We are working in a way that does not depend on the number of dimensions. This also works for rotations, which are fundamentally two dimensional in the sense that they rotate one vector into another, regardless of the number of dimensions. I sometimes use 4D Rotors, which have the same interface as Quaternions but for 4D.
That's it! I got better at finding which dimensions to ignore over time.
This approach kind of breaks down a little bit when thinking of objects that change in all dimensions at once (such as duocylinders for example), but the general idea is the same: you can work with math without needing to see all of what it represents at once. Imagining different parts of it one at a time is often enough. The math, and the computer that works with it to display it, can do the rest.
I am nearly done with making puzzles for the game! I might still add a couple puzzles here and there but the bulk of the work is done.
I was curious about how many levels of each type (i.e. main mechanic) there were so I made this (approximate) chart:
The colors indicate main mechanics and the subcolors indicate relative difficulty within a mechanic. (Some levels use more than one mechanic, however...). The surprising thing for me is the large "blue" section, which is one fourth of the game, and which I added almost as an afterthought and didn't anticipate would be so rich, while some other sections didn't end up as relatively interesting as I thought they would be.
I am very happy with the result as every single one of these levels contains a unique idea. Luckily the 4D mechanic is extremely rich so I didn't have to look much higher than the low-hanging fruits.
It seems like I almost doubled the number of puzzles in the game these past seven months? The initial prototype had about 30 puzzles, which defined the basic rules and most of the mechanics. Then I fleshed out the tutorial section and added two main mechanics: two years later I had about twice that amount. Then I mostly stopped making puzzles (even though all the mechanics were set) to focus on improving the graphics (which in turn improved the gameplay), but I added a few puzzles here and there, and I had about 80. This final push increased that to around 140: I added puzzles to all the mechanics to fill-in blind spots and make the difficulty ramps smoother, then made most of the puzzles for two main mechanics and replaced a small mechanic that had been bothering me for a long time with one that is much cooler.
Now I will do a last pass improving various graphical things, while we work on making each of these puzzles and the rest of the game look and sound as good as possible.
Finally, here's a recent screenshot I didn't post on the blog yet:
Deep within the Ancient's Grove one can find broken-down stone columns, erected to worship old gods.
I could have officially announced this much sooner, but I wanted to wait until the game was further along. Miegakure will release on Steam when it is done. It will be out for Windows/Mac/Linux.
I have been working on finishing up most of the puzzles for the game. There are about 130 right now, and not that many left to do! I am not shooting for a specific number, but rather exploring all the mechanics in the game.
I am also having fun making levels that are less puzzle-y and more about showing off cool 4D things, like the 120-cell level from the trailer, and the above Spherinder grove. My design philosophy has been that each puzzle in the game should be about a cool consequence of what you can do because you can move in 4D but I realized this extends naturally to more visual consequences as well.
When looking across worlds the windmill appeared strange, its swift blades moving in and out of sight. I could hear their faint echo ripple through the dry desert air.
There's something very mysterious about a fourth spatial dimension. We can't directly see or touch it. We don't know if it exists, and if so in what form. It is difficult imagine, because our sensory system is built for three dimensions. Furthermore, most people have never tried imagining it at all.
And yet Miegakure can be understood and played by any random puzzle-game player, at PAX for example. How come?
It's amazing how fluid the transitions between dimensions are, and how much sense it makes once you play. -Chloi Rad (IGN)
For me the main reason might be the fact that Miegakure starts by purposefully framing the fourth dimension from a particular point of view, one that we are very familiar with, that of parallel universes.
Think of a stack of paper, each piece of paper is a 2D square, but together they form a 3D cube. Each piece of paper is literally parallel to the other pieces of paper; they don't intersect. The same thing happens in lower dimensions: we can build a 2D square out of parallel (1D) line segments, or a line out of (0D) dots. This pattern works in any number of dimensions: we can think of a 4D cube as being a stack of parallel 3D cubes. They are stacked along the fourth dimension.
So a 3D world can be seen as a stack of 2D spaces, as is shown in the trailer:
Similarly, the fourth dimension can be seen as literally parallel universes (A 4D world can be seen as a stack of 3D spaces). The fourth dimension is a way to mathematically define parallel universes in a rigorous way.
Some parallel universes are completely separate from each other, but some are connected in some way. In games there's the Dark World and the Light World from Zelda A Link to the Past and A Link between worlds. There are also parallel worlds that are the same world but at different times, like Back to the Future, and Chrono Trigger.
Miegakure happily leverages all this experience we have thinking about parallel universes, but extends the concept as contained in the concept of 4D space.
I find it a bit similar to skeuomorph interfaces used previously on the iPhone, where for example the calculator looked like an actual old calculator. “it makes it easier for those familiar with the original device to use the digital emulation by making certain affordances stronger.” [Wikipedia] We can recreate something that people are familiar with, but also extend it, freed from the physical limitations.
In Miegakure, especially at the beginning of the game, to help players understand the game we texture the ground differently at intervals, to group parallel worlds together and visually differentiate them. So the first main thing that needs to be figured out when playing Miegakure is how do the literally parallel worlds (that are a natural consequence of a 4D world) manifest themselves in the game. How do you move between them? How do they relate to each other? Which point in one world is closest to this other point in another?
While any interaction with a video-game is very instinctive (especially at first, and since I chose to make the game teach non-verbally), at a basic level these questions do have relatively simple answers that can be expressed in words, in part because of the vocabulary we have built for parallel universes.
Of course, A 4D world is more than an stack of independent 3D worlds, just like a 3D world is more than an stack of independent 2D worlds.. Something deeper is going on, something that takes longer to grasp. Something that players tend to feel but can't express in words.
For example, while these worlds are parallel, they are not necessarily independent. So while each piece of paper in our stack can contain its own 2D world, independent of all the other worlds, this stack is different from a cube, which is a single continuous object. If we still insist on seeing the 3D object from a multiple-2D-worlds perspective, we can say that the worlds can somehow be connected/attached to each other. They can also rotate together by rotating the whole thing, etc...
Furthermore, a true 3D object might look very complicated and confusing if we only saw it through 2D slices. And so similarly if you look at the shape at the beginning of the 2nd trailer or the end of the first, you can see that it is not made out of layers (parallel worlds). It is a 4D shape called the 120-cell.
My design goal in creating Miegakure is to use the very familiar concept of parallel worlds as a strong foundation for understanding, acknowledging it as a part of the concept of a fourth dimension, but to not limit the game to it. Since the game is properly programmed in 4D if players wish to dig deeper there are plenty of things to discover and try to understand, things that I sometimes don't even fully understand myself.
The windmill appeared strange from this perspective, its swift blades moving in and out of sight.
A few things.
Miegakure is coming to PS4. I wrote a blog post introducing the game over at the Playstation Blog. Interestingly I had never written an introductory post like that. We are showing the game at the Playstation Experience in Las Vegas on December 6th and 7th, 2014. Of course, it will also be on PC/Mac/Linux.
Now that the tech has solidified a bit we have been working on lots of new art, which I am exited to show soon. On the code side I have been finishing up smaller things like collision detection with objects that are not the tesseract tiles. It used to be possible to walk inside trees and lanterns, etc...
You know the game is strange when you can finally add collision detection many years in! For the longest time it was not clear how to embed 3D objects in the 4D space and how to display them, or what a 4D mesh even is, etc... So collision detection came as an afterthought. Note that you can almost never stand stand on these objects, so them having no collision never affected gameplay. Anyway I literally just added that and I am excited to test how it feels at the show, ahah.