Jobs!

We are hiring.

We at Thekla, Inc. are a small independent developer making games with tradition-breaking designs.  We are pushing the boundaries of what a video game can be. Our current project is The Witness, a puzzle/exploration game designed by Jonathan Blow, designer/programmer of the critically-acclaimed Braid.  Our office is in Berkeley, California, USA but we will consider remote work for the right candidates.


Senior Game Programmer (full-time)

Work with other excellent programmers to build technically-sophisticated games for a variety of platforms, including consoles, PCs, and tablets.  Work on systems-level infrastructure as well as gameplay code.  You get a lot of freedom to approach problems the way you want to, and to employ your full range of technical creativity.  Management overhead is minimal.  There are many perks you won't find in other jobs.

Our code is mainly in C++.  When it comes to building software, we have a no-nonsense approach.

Job Requirements:

  • Be good at making video games.



Senior Game Programmer (part-time, contract)

Like the job above, but part-time.

To inquire about any of these jobs, please send email to jon@number-none.com.

Grassing it up…

Since The Witness takes place in the outdoors much of the time, we knew from early on that we were going to want to have grass of some kind. We added grass into the engine quite a long time ago (starting around December 2009?) and it's gone through several iterations of what-seemed-to-make-sense-at-the-time. At this point, it is starting to be kind-of reasonable, so to spruce up the game a little bit for next week's conference, I started using grass willy-nilly around the world. (You may have seen a little bit of grass creep into earlier screenshots, but prior to today it had been confined to very small areas of the island).

Here's what it looks like now:

It does not look shipping-quality, but then, almost nothing in the game does! As the first results obtained by just slapping some pre-existing grass meshes down on the terrain without trying too hard, I find it highly encouraging.

Note that grass doesn't cast shadows right now. There are two reasons for that: rendering speed and aliasing of the shadow map. I suspect we will try to make grass cast shadows before we ship, though, and if we make something good happen there, I think it will really boost the visual quality.

The one piece of code that pushed the grass over the threshold into general usability is that it now has the ability to sample terrain blend maps. (The terrain uses a blend shader, where a non-visible blend texture map controls the degree of mixing of different terrain materials. This is becoming a common thing in 3D games; Uncharted 2 and Crysis 2 do it, among others.) The grass can now peek at the blend map and reduce its density in areas of particular blend values, which is why in this screenshot that path going up the hill is free of grass. This tremendously reduces the amount of manual tweaking required to make the grass not do obviously-bad things.

However, the grass doesn't check for buildings yet, which means if you place a field of grass across the area of a building, the grass will probably stick up through the floor inside the building! Fixing that is next on my to-do list, but it involves a lot of raycasting, so hopefully it doesn't make grass placement too slow.

In the future I plan to try using this same "grass" system for other kinds of scattered ground objects (fallen leaves, twigs, small rocks, etc).

Update!

Toward the back you can see some of the stuff that was being worked on in the previous post (but from a different angle!)

The current puzzle count is 251. That's pretty good, but on top of the increase from last time, another 25 of the old puzzles were rewritten. So a bunch of stuff has gotten done!

Over the next couple of weeks, I will be hammering on the puzzles even more, as we get the game to a new level of completion and playability.

A glimpse into the terrain design process.

This is an experiment in writing up a blog post for a development task while I actually perform the task!  So right now, as I start writing this, I don't know how it will end!


I was talking to David Hellman about the game the other day, and he was asking when the island was going to become less like a flat plane where you can just walk to any destination from anywhere else.

It's been on my to-do list for a while to add more topology to the island. That week I had been working on an area full of puzzles, and I wanted the buildings that define this area to have more of a purpose than they currently do; a topological purpose seemed like the right thing.

So I figured I'd add a canyon, and the building containing these puzzles would also serve as a bridge across the canyon.

The natural way to build the canyon in this engine is to shape it out generally with terrain control points, and then make the walls steep by putting mesh objects in there (so that you can't walk up them, and so that the walls of the canyon won't look super-distorted the way heightfield terrains usually do when there are steep slopes.)

Here was the first cut at it:

Continue reading

How many puzzles are in The Witness?

Today I was deleting an old area of the island, which had about 25 puzzles in it that I wasn't happy with. I took to wondering how many puzzles would be left on the island after I deleted those, so I added a console command to count puzzles:

So, there are 222 puzzles left in the game (I just deleted about 10% of them).

Many more puzzles are going to be added; I would guess that by the time the game is done, there will be over 400. We'll see; I think this will be a fun statistic to watch, along with those screenshots of the island.

In comparison, Braid has about 76 puzzles in it. So that tells you something about the relative sizes of the games. That said, the puzzles in The Witness are often intended to be bite-sized and quick, so it's not really a direct comparison. (On the other hand, some of the puzzles are most definitely not bite-sized and quick!)

Island Update

The past week has been a very productive time in terms of world-building. The island has been shrunk further, with several of the locations that used to be further to the right moved inward. The white-walled location from last time used to be a standalone structure, but is now built into the side of that plateau nearest the camera, and has a new structure next to it. One of the prominent garden areas has been redesigned; you may notice it a bit to the left of the center of the map. On top of all this, a new underground area has been added, and I really like some of the puzzles in there.

When the new area gets finished gameplay-wise I will post some shots of that.

Up next: adding more puzzles!

The Island Today

Here's your Island Snapshot for the end of January. Recently, we've been mostly working on things you can't see, but you may notice some subtler differences in terms of buildings / structures.

The most obvious difference from the previous shot is the thicker atmosphere. Ignacio changed the fog model; the fact that we have a bit more fog, combined with the art style we've converged on, should help us do high-quality LOD handling for distant objects.

Your bonus picture for today is part of an indoor complex that I am very happy with. This room is all white with a bit of colored glass. Note the lovely lightmapping, even on such slapped-together geometry:

Adventures in Fisheye Lenses

During the past couple of weeks, we have been doing some experiments for The Witness that involve pre-rendering a scene with a fisheye lens and then using that render during gameplay. If I were to say exactly what this is for, it would be a massive spoiler, so I'll just say it's for a kind of environment-mapped rendering.

The general requirement was that we need to be able to capture a pre-rendered scene with a really wide viewing angle. At first I was confused about the technical aspects of the problem (hopefully forgivable, since I spend most of my time thinking about gameplay these days, so my tech is a little rusty), so I thought that we might need to have a linear projection in order to solve the specific problem under consideration. So Shannon made a mock-up scene in 3D Studio MAX and we started making prerenders with increasingly wide camera angles, in order to test our special environment mapping. Here are three shots of the same scene with fields-of-view of 90 degrees, 120 degrees, and 150 degrees:



(Click on the images to see actual sizes.)

Continue reading

CVG appear to be a bunch of lousy hacks.

Recently, on a visit to England, Chris Hecker and I did an interview with Edge magazine. It was a long interview where we spoke freely on many topics, while having a good time. Afterward, the interviewer and the editors of Edge did a very good job editing down the interview and distilling it into its salient points, without distorting the substance of the discussion.

The final result is published in Edge issue 223. I am very happy with it. It is probably my favorite interview I have done during my 15 years in the game industry. I thank Edge for the opportunity to do the interview and for their hard work in writing it up.

Because I like the interview so much, I should be happy when other news sites spread the word about it, right? Apparently it is not so. CVG just published online an article about the interview titled

Braid creator: Sony takes more risks than MS with indie game choices


They fill out their article by pasting in somewhat-out-of-context quotes to support this statement (and nothing else). To believe their account, it was a highly anti-Microsoft and pro-Sony interview. [I am not going to link to CVG's article, because I don't want to give them hits; go find it on a search engine if you want to see it.]

CVG's article is a deceptive, manipulative piece of sensationalist crap meant to drive hits by stoking the argument between Sony fans and Microsoft fans. It misrepresents the content of the interview almost entirely. (Chris Hecker, who was half the interview, doesn't even appear in their write-up. This alone should make it clear that they have no interest in truthful and accurate communication.)


Chris Hecker: Half the interview! He's even in the foreground in this picture.

For the record, here's a list of the subjects Chris and I actually talked about:

  • Overall trends in indie game development -- where, and for how long, will indies be able to find Braid or World of Goo-sized audiences for their games?
  • How it's easier to make indie games, on the technical implementation side, than ever before.
  • Small indie games versus big indie games -- punk-rock-esque one-offs vs deeply exploring game design subjects.
  • Indies ought to step up and produce higher-quality work rather than so many bad games and a few good ones.
  • Braid is structurally a traditional game in many ways.
  • The idea of game design as a stream of focused communication rather than a set of rules.
  • Even the highest-selling games right now essentially sell to a niche audience.
  • Innovation in mainstream games and how it helps drive the industry.
  • When is an indie game really finished -- how much work should you put in?
  • Problems with the way video game education is set up right now.
  • Most people who use the phrase "game mechanic" don't seem to know what it means.
  • How to see your game from the perspective of the player.

In the middle of all this, there is one bit about the way Microsoft and Sony, respectively, handle their portfolio strategies with regard to indie games. There are positives and negatives mentioned regarding each party. Sony does come out a bit ahead, but our discussion was much more even-handed than the confrontational CVG headline would have you believe.


From CVG's write-up, you would barely even know that I talked about my company's upcoming game The Witness.

Is it the case that I said the things that CVG quotes? Yes! Are they an honest representation of the content of the interview? No! They are a dishonest and manipulative way of driving hits to CVG's web site.

Chris recently wrote about this kind of treatment at the hands of journalists, so rather than repeating him, I encourage you to go read that article. I do want to point out, though, that this is not a victimless crime.

When this kind of hack-job is written, it hurts indie developers: it harms our relationship with our business partners like Microsoft or Sony when they think that we called an interview just to trash them in public (or when they know we didn't really do that, but they have to deal with the PR fallout of the public thinking we did, which is just as bad.) It harms my reputation with players because they think I called an interview just to make a big deal out of bashing Microsoft and generally being negative (which I did not do!) It does an injustice to people who want to read about thoughtful discussions in video games; it does this not only by failing to point out the thoughtful parts of the interview, but by injecting extra noise into the sphere of discussion, making it harder for everyone to find anything thoughtful.

But perhaps worst of all, CVG is crapping on their fellow journalists at Edge by depicting Edge's hard work as tabloidesque junk.

Damage is clearly done, and CVG are doing this damage just so they can make a little bit of money off a few more web hits.

I encourage everyone out there to stop reading this kind of stuff. It's just misinformation; it's worse than worthless.