Alt.CTRL.GDC Showcase: Sand Garden
The 2017 Game Developer's Conference will feature an exhibition called Alt.Ctrl.GDC dedicated to games that use alternative control schemes and interactions. Gamasutra will be talking to the developers of each of the games that have been selected for the showcase. You can find all of the interviews here.
Sand Garden is a sandbox game--literally. It has players sticking their hands in heaps of sand, moving and shaping it to create valleys and mountains to make virtual villagers happy.
As players sift and shape the sand, their actions are captured and transferred into the game's world. This takes the childhood act of playing in the sand and turns it into gameplay, having players recapture that part of their youth as they play.
Created by students at the Digipen Institute, Sand Garden has gone through many iterations as developers Taylor Riviera and Allan Deutsch worked on the game at different points over the past few years.
Gamasutra reached out to talk to the developers about the work they've done on Sand Garden over the past few years, and why they chose to capture the natural childhood action of playing with sand (which you can do when the game is on display at ALT.CTRL.GDC).
What's your name, and what was your role on this project?
Riviera - I’m Taylor Riviera, and I am the Lead Designer and Producer of Sand Garden.
Deutsch - I'm Allan Deutsch, and I was the technical and project lead for the first year of development.
How do you describe your innovative controller to someone who's completely unfamiliar with it?
Riviera - Sand Garden is a game whose sole form of input is a box of sand. To play the game, you make hills and valleys in the sand, and the world responds in real time.
Deutsch - "The controller for the game is a physical box of sand - you don't use a mouse, keyboard, or console controller." Getting to this description took about 8 months of refining, it started out closer to "It's a sandbox game, literally", which, while clever, didn't seem to do a particularly good job of helping people figure out what I was talking about.
What's your background in making games?
Riviera - When I was young, I thought that becoming a game designer was a pipe dream, like being an astronaut or a princess. I imagined that game designers were given the gift of game design at a certain age, like a ray of light from the heavens. Near the end of my senior year of highschool, it dawned of me that I could make this game design thing happen. So after I graduated highschool, I took a year off to save up for college and try to learn some coding on my own.
My first game was a clone of pong in C++. I didn’t know about header guards, so it was all in one file. No menus, of course. All the collision detection was done by finding the location of the paddle and then dividing the screen into eighteen-point-fifths. It was all completely hard coded; if I’d wanted to move the paddles to be closer together, I’d have to throw all that code out. But I had made it. To me, it was a monument of success.
When I was accepted to DigiPen, I felt super nervous. I wasn’t a great student in high school, and the first thing they say is, “One out of every three of you will not make it.” I was sweating in my seat. So I put my nose to the grindstone, Drafting and throwing out concepts like there was a gun to my head. I picked up C, C++, Unity, Unreal - any medium that you could make a game out of. That’s where I am now!
Deutsch - At DigiPen, we do a semester-long team game project both semesters of freshman year, and then year-long team game projects sophomore through senior year. I had never made any noteworthy games before I started attending DigiPen. The Summer during which the game was moved to Unity I was an intern at Microsoft Studios on the Global Publishing Team, where I worked on ReCore.
What development tools did you use to build Sand Garden?
Riviera - Sand Garden was in two completely separate engines. The first version was built in a custom engine called “One” engine (C++). That was built by the original Team Psylight, which was fifteen people, myself included. While it was nice having low-level control over the game, the engine was extremely experimental, and unwieldy to develop in. When it came time to take Sand Garden to the next level, we cut our losses and scrapped our previous development.
For the second version, we used Unity and drastically reduced the team size. After all, we didn’t need the back end to maintain a custom engine anymore. The smaller group of six people we called “Summer Psylight,” and I officially took over as producer in that transition. The Unity version is the build we’re showing at Alt.Ctrl.GDC.
Deutsch - The original project (~May 2015 - April 2016) was built in a custom engine we made using C++ and Lua. The game was then ported to Unity and is built in that engine. We also used the Microsoft Kinect V2.
What physical materials did you use to make it?
Riviera - The original box was made out of the cheapest plywood, while throwing in as few wooden beams and metal connectors as we could afford. To keep the sand in--and to appease the facilities staff of Digipen--we nailed a blue tarp to the inside of the box as a liner. James Schmidt was the mastermind behind that box, and I still remember watching in horror as he balanced the projector on top of our already flimsy box. Despite my paranoia, he knew what he was doing, and it never fell apart.
I don’t think it would have survived PAX Prime.
Our current box is made out of aluminum, which was donated through Luc’s family on behalf of IGS America, who generously donated their materials and man hours. The new box is a beauty, but we still have that blue tarp in the bottom. The Kinect didn’t play nice with the shiny aluminium.
In terms of the sand, there was two versions of that as well. First was standard childhood sandbox sand, which we got from Home Depot. It was quick to move around, and early in development, we wanted to make the game more action-oriented. However, it kicked up clouds of sand dust, so we were only allowed to keep it in the corner of the physics classroom. So, anytime we wanted to test our code, we’d walk down stairs from our work space, hope that class wasn’t in session, and take over the physics room. That wasn’t great for productivity.
Jeff Uong, who initiated work on the tech demo, wouldn’t be held back by that. He’d been researching Kinetic Sand, which could be easily cleaned and didn’t have dust issues. We received the green light from facilities, but we still had problems. First thing in our way: the cost. About $500 for one batch, plus extra in case some got lost or became unusable. Thankfully, a sandbox game was just the sort of crazy idea that Claude Comair-the founder of DigiPen-loved, and one short conversation later, we had a mountain of sand.
Playtesting told us that the new sand was a hit, but it came at a cost. Moving this stuff was an upper body workout! Forget reacting quickly; some people had difficulty moving it at all. So, I threw out most of the previous design, and reworked it so that it moved at the pace of the player. From there, people were having tons of fun with Sand Garden! Or at the very least, they were having fun playing with the sand.
Deutsch - The original sandbox looks like it came straight out of a student's garage - it was the cheapest wood we could buy, covered in tarps, and so wobbly that we worried the projector was going to snap off every time someone played the game! The first upgrade we made was the sand - I asked the president of the school to spend $1000 on sand for a game project, and he agreed almost immediately.
Later on, when we were selected by the school to attend PAX West and show at the school booth, we got some additional funding to build a prettier box.
On the tech side, we also use a projector to overlay the world onto the sand, a television to display a 45 degree view of the world with full detail, which isn't as visible in the sand, and the Xbox Kinect V2 to get height data from the sand. It runs fine on pretty much any PC with a mid-range or better GPU and support for 2 display outputs (projector and TV).
How much time have you spent working on the game?
Riviera - Honestly, I have no idea. I pitched the idea of Sand Garden to the team in early January, 2016. After that, it was a madhouse getting Sand Garden off the ground. I was going non-stop. Even when I wasn’t working on it, I was bringing someone else in to work on it, or delegating tasks, or lying in bed thinking about it. Sand Garden was all I could think about. After first playable we caught our breath, but the week after that we were running into deadlines.
During the summer, things were less hectic on the design side, and more hectic on the tech end. After all, we’d just thrown out all of our hard work out. The hours were better then, and there was less team to manage. I’d say I went from spending 20 - 30 hours of actively working on it a week down to 15-20. I got my weekends back, too. After we took it to PAX, we hit a standstill. After spending so much time with it, I’d gotten burned out with the thing. So, September to November, I completely halted work on it. Then, in December, we picked up working with it again to get it ready for ALT.CTRL.GDC.
If I had to ballpark it, I’d say ~1000-1300 hours total
Deutsch - Most weeks of development I spent around 20 hours a week on the game, with a peak of 40 hours and a valley of 12 hours in a week. From September 2015 until end of April 2016, we usually had 16 members, most of whom probably spent a similar amount of time on the project. When May rolled around some of the team members continued to work on the project through Summer with a build made in Unity.
How did you come up with the concept?
Riviera - The idea was born when when Jeff Uong found a YouTube video, using the Kinect to color a projection of sand as a tech demo. At the time, we were having issues integrating our editor, so Jeff suggested to make a sandbox level editor.
I told him no. Then, I thought about it, and asked how we’d load levels. He had no idea. I reiterated that it was not happening. Jeff isn’t someone who is easily deterred.
Sure enough, over winter break, he and Sagnik Chowdhury whipped up a tech demo in a couple of days. On the last day of winter break, he sent me a video of the tech. I thought about it on the plane ride home, and when Allan picked me up from the airport, I pitched the idea of turning it into a game. Turns out, he’d been thinking of it, too. Two hours of Indian buffet later and we had the idea of a tower defense game. You would create obstacles for the enemies using the sand to try to steer them into your turrets.
With the regular sand, it worked as intended. It was light and easy to move around, which made it perfect for reacting to waves of incoming enemies. It had one fatal flaw: we couldn’t have it in our work space. This kept development at a crawl. The switch to Kinetic Sand fixed this problem, but it broke our design.
So, in the rework, I looked for a way to let players play at their own pace, but still give the game direction. From the start, my design philosophy was giving context to playing in the sand. I also wanted to limit the game to the two fundamental actions of playing in sand: making hills and digging holes. In addition, I always used to imagine that I was a god when playing with sand, raising mountains and digging rivers with ease.
With that in mind, I arrived at the idea of splitting the terrain into three height regions: hills would be mountains, holes would be valleys, and in the middle, we’d have grasslands. With three different types of houses that prefer to be on a certain region, we could let the player play at their own pace, while keeping that all-important context. The only thing we were missing at that point was letting players be malevolent, and destroy villages. We added that later.
Deutsch - Believe it or not, this game was originally a large-scale, open-world platforming adventure. Around December 2015, we decided that game wasn't very fun and decided to think over new ideas during break. Around the same time a couple of the team members - Jeff and Sagnik - wanted to make an augmented reality (AR) sandbox like they'd seen on youtube.
After a couple days of prototyping the simple tech demo (without any sand even!), it was more fun than our game after almost 8 months of development, so both myself and Taylor spent a lot of time during Winter break brainstorming game ideas using the sand box. When Taylor flew back in, I picked him up from the airport and we went to lunch and bounced ideas around for a couple hours.
The key insight we found was that we wanted to focus on was keeping people interacting with the sand constantly. Some of our earlier ideas - such as a tower defense game - had more of a cycle of build something in the sand, say you're done, watch the game play itself for a while, repeat. The idea we ended up going with that day wasn't particularly close to what you will see at GDC, but it was enough to convince the rest of our team to make a game played using a box of sand, and from there it was iterated on constantly to get to where it is now.
How challenging is it to work with sand as an interface? How did you turn sand into a controller?
Riviera - From the ground up, I tried to design around breaking the sandbox down into the smallest, most natural actions possible. As far as I could tell, the two actions were digging holes and making hills. So, I set out to turn those actions into a game. True to the design, in the final build of the game, the only things we detect are holes, hills, and if you have your hands in the box.
Working with sand as an interface gave us strange issues. The one that blindsided me in early playtests was people being afraid to touch our controller. I think what happened was that people see this big fancy set up, and end up getting scared of screwing something up. When you have a controller you put it in front of someone, and they have a limited number of actions they can take. They can push a button, or move a stick. My brother figured this out at three years old, although the details of Super Smash Bros. were lost on him. With a sandbox, you have unlimited choices. It’s like a blank piece of paper: so full of possibilities, and so intimidating.
The projector also helped to make the game intuitive. The context of which parts of the sandbox correspond to which parts in the game gave that little extra bit of context. The downside was that we didn’t start out with it, so it ended up bolted on to the top of our rig like a thousand-dollar hat. I nearly had a heart attack watching that thing shake every time someone played the game on the old rig.
Deutsch - We used a Microsoft Kinect V2 mounted above the sand to get height data - this was actually not that difficult, a couple of devs had it mostly working in a weekend. The rest was just getting it to feel right.
We had a couple issues with real sand, initially. In addition to not being allowed to bring a box of regular sand into the area where we worked on the game, it is impossible to form anything interesting with dry sand - it doesn't hold form at all. To improve the controls and get permission to bring our sand box to our work area, we actually switched to using kinetic sand, which holds form much better but is a lot more difficult to move. I think something a little more malleable would be ideal, but the kinetic sand seems to be great when there are multiple people playing.
What was the appeal in making such a natural, intuitive controller? In using something natural to create a game?
Riviera - The major appeal for me was having a big thing of sand to play around with in the teamspace. I lost hours playing in it.
Honestly, I think the big thing was that I wanted something different. We’d just come off a project that was over-scoped beyond belief, which was (ironically) designed to win awards and be impressive. It ended up an overambitious mess that nobody liked. When I thought about making Sand Garden, more than anything I wanted to make a game for me. I wanted a game that nobody would fund in a million years, and would be impossible to sell. I wanted to make game that I could only make right now, something that was completely crazy and only could be made by someone with nothing to lose.
I thought: “I might never have this chance ever again. What’s the point in going to a game design school if not to experiment?”
Deutsch - It's fun! We wanted to do it because it was more fun than the game we had been developing. One of the particularly neat things is that people enjoy the game even when the game isn't running and they're actually just playing in the sand - the game is just a context for adults to play in sand in public and not feel self-conscious.
It also lends itself really well to the type of environment people will experience the game in - nobody will ever really play this game at home, it will only be when they see us at school, PAX, GDC, or maybe some other events in the future. This is a short experience, and we don't want to waste it having to teach or explain controls. One of the nifty features the sand gives us is that almost anyone can figure out how to play immediately.
Playing with sand was a childhood pastime for many. What thoughts went into creating a game out that childhood need to create? Out of that need to mold the land and environment around you into something new?
Riviera - So often in game design we try to pull that elusive idea of “fun” out of our hats. What is fun? I’m honestly not sure, but it seems to be different for every person. When I think of “fun”, I think of that childhood wonder I had where every playground was a world of adventure for me just waiting to be explored, and the only limit was my imagination.
Playing in the sand evokes that same idea of fun that I’ve been chasing for a very long time. So I figured, if I can make a game out of sand, I’ve already got magic in a bottle. My job will be easy! I wasn’t entirely correct in that train of thought, but I still think the sentiment is accurate.
Deutsch - As I said earlier, playing in sand is fun and, like you say, a common childhood pastime. As adults, we tend to feel self-conscious about doing things that might seem childish, even though they are fun. Our goal was simply to create a context in which people can have fun, and the childlike wonder we see whenever people see and play our game is a reminder that we did a good job.
How do you think standard interfaces and controllers will change over the next five or ten years?
Riviera - The major shift we’re going to see is one away from keyboards and towards touch screens. It’s already happening, but in the next five years, we’re going to hit the tipping point where the majority of consumers expect a touch screen. With the iPhone at nine years old, we’re already seeing students who’ve gone through all of highschool primarily using a touch screen, and that’s only going to increase with time. Keyboard and mouse is going to be the stickshift of computers: technically it’s more efficient, but nobody is willing to take the time to learn it--with the exception of programmers, writers and enthusiasts.
In terms of controllers, not a whole lot is going to change. Truth is, complexity in controls just gets in the way of gameplay. That’s fine if that’s the appeal, like with Sand Garden, but you wouldn’t make the SandBox 720. For something to change the controller market, it’d have to be as intuitive as the Wiimote was in Wii Sports, allowing players to play it without getting tired, and be easy to develop for. While that’s not impossible, it’s not something we’re going to stumble into. That said, if you find that controller please shoot me an email. I would love to check it out.
Deutsch - I don't think standard controllers will change much. Even Nintendo, which has some of the most consistently innovative controllers, has gone back to a fairly standard controller - the switch isn't so different from a Wii U gamepad from what I've seen, and the detached sides look like they're basically NES controllers that have been upgraded to a joystick. The Oculus and Vive controllers also seem fairly similar. I suspect Xbox and Playstation will continue to make small improvements to their controllers, but nothing huge - they already have something great.
I think the real area where we will see wild improvements in interfaces is AR, in which only your hand is used. At CES this year, BMW showed a car that had a fake screen with an AR overlay that tracked finger position with a camera on the steering wheel and used speakers to provide haptic feedback when your finger was far enough to have "pushed" the button. I think that is innovative and exciting, and I'm more interested to see huge jumps like that.
I suspect we will also see a lot of innovation in IoT and the voice AI products like Google Home, Alexa, Siri, and Cortana. There's endless potential there, and I can see it starting to get huge in the next 10 years. I could see a really well executed product suite in this space being as influential as the iPhone.