Post Categories

Neverest on Steam Greenlight

I’ve released my game Neverest to Steam Greenlight today as planned. It takes a login (being part of the Steam community) to vote for a game, but you can see my release on this page if you view all releases, or search for Neverest.

https://steamcommunity.com/greenlight

neverestboxart

Neverest sketches and render update

It was a year ago that I jumpstarted this game idea having shelved it. I partly lost momentum in game development when I switched to Unreal 4, trying to keep up the momentum now. Some of these ships will appear in game, but not everything I design or even build does.

neverestBoat2

IMG_8802

No, not all these sketches are good, the point is that as an indie developer there really isn’t time for me to sit down and just design for months, but rather it’s sketch, design, test, model, texture, light, game program, test, repeat.

IMG_8803

neverestBoat1

Dyslexic confessions of a Dad

I have a confession to make, it’s time that i told a little bit more of my story, which is really our story and what I’m tinkering with in my art studio this past year. Almost a year ago I dropped everything I was doing in my studio, the paintings, the children’s books and focused on one thing, a game I’m making to help my son (and others like him) with his dyslexia.

This is not a super easy subject to talk about, although dyslexia is somewhat common there is still a lot of judgement of both the child who has dyslexia and even the parents. The child is often judged as not being smart at all, unteachable is a word used, and the parents are judged as neglectful.

What people often fail to realize with dyslexia is that we have people who have brains that clearly work differently than others, and dyslexia is just one example of this. This doesn’t mean dyslexics are not smart, often they have ways of contributing beyond what others can because of a unique way of thinking.

One example is Jack Horner, the noted Paleontologist who has been the inspiration for the paleontologist in Jurassic Park, he graduated high school he says, with a D–. You may not be able to see that correctly, that is a D-minus-minus. In his words his teacher said that he “Failed, but I never want to see you again.”

Alongside the dyslexia is the fact that my wife and I homeschool our sons. We left Los Angeles, now almost ten years past, so that I wouldn’t spend countless hours working on film visual effects and have no relationship with my family. Over the years we have learned to juggle and share family life, and work life.

I moved from putting all my time in the entertainment industry and more time with my sons exploring museums and doing art with them. This is when I began to see the way we educate our children in museums differently, and started to come up with creative ideas for educating them visually, and interactively. I began sketching out ideas of how to use my visual effects skills in this way.

Like my son, I’m a very visual thinker and a tinkerer. Right now I like to think of more dynamic ways to get information across to people, especially when a museum display or some other form is failing to make people see it, and as a visual thinker I do think people have a failure of imagination when it comes to visualization what the world, and universe around us looks like. Listen to this veritasium video to get an idea of how the education system can fail to really inform us about just how vast our universe is for instance.

My family started out on a sometimes frustrating journey with my son’s dyslexia, which makes his own interaction with the world sometimes difficult, and can make even the smartest kids, feel like failures. It can lead to loving family members or friends being shaming and judgmental. It can lead to parents pushing their kids and asking why they “aren’t trying?”

Dyslexia is not related to the intelligence of a person, as we see with many very prominent dyslexics like Jack Horner and Richard Branson. Branson talks about his Dyslexia in the video below, and he like many see it as a positive, not a negative. I want to make it clear, I see my son as gifted, super creative, and his dyslexia as the most obvious unfortunate label that often gifted and creative people receive, making them feel unteachable and like they aren’t smart. Labels like this can undermine a person and make them give up. This is because we live in a world that only has one metric for determining intelligence (generic tests that squash creativity).

As an artist, I am well aware that the world has one metric for judging intelligence, and leaves out wide swathes of others whose brain works vastly differently.

Imagine for a second an alternate universe where instead of children being tested in school for math, memorization, and punctuation, they are encouraged to be creative, open, explore and be funny. They get to do art, build things, play music, and play and there is no test because you can’t test the best way to bring an individual’s gifts out. When you graduate you have to show your gift, a demonstration or sharing without judgement.

Perhaps in an extreme version of this alternate universe if you can’t draw, or play an instrument, make an invention out of a pile of stuff, or do an improv play then you fail. In this universe math, punctuation and memorization are not used as the metric to determine your intelligence, there is a celebration of many kinds of intelligence over memorization of facts.

Perhaps in some way in education we squash that internal education that may have been passed down over many generations. What if we are going against the very nature of a child and family that specializes in something over generations. The family of musicians, or the family that loves to study nature by scuba-diving. What if for every graduate we suppress another Mozart, another Cousteau. This isn’t about saying that we have a “genius” among us, or putting people who think differently on that specialty pedestal, but honoring something deeper in them, a specialty that their brain and spirit are working towards.

My point is that we often test people and give them the feeling that they are less than others based on tests that favor a particular brain type, a particular calling.

Before someone jumps in to suggest the many teaching approaches to “resolve” dyslexia let me say that we have tried several different approaches with professional tutoring that are very involved and take a lot of dedication from all of us, as well as mind/body exercises that are supposed to help balance the brain etc. I’m not saying that all these techniques shouldn’t be used, but so far for us, some have resulted in more frustration, and others in tears being shed. That isn’t to say that there isn’t a lot of great information out there, and a lot of good techniques that have resulted in very good results for children with dyslexia, or that we have stopped trying. I however am very skeptical when I hear that someone thinks they have the cure for dyslexia.

While trying these tutoring programs for my son, I began to tinker in my studio with a video game idea to help kids who struggle. This wouldn’t be a game like “reader rabbit” but a game more like Myst, that i hoped would be something a child would just want to play, and that in a way I could hack their brain by just getting their interest.

I dummied up a test of the game, in software I was just learning (Unreal 4) and showed it to my wife and son. I didn’t show too much, and although I felt I was on to something, I dropped it and returned to writing, while we tried yet another approach for the dyslexia.

After another round that was frustrating for all, my wife asked me one day, what about that game idea I had. I dusted off the game and dove into it fully putting all my energy into learning the software, and trying to bring my visual effects skills up to speed in this new arena.

I’ve worked hard on this game, and I test it with both of my sons, who enjoy playing it. There is still much I’m not saying about my approach except to say this, the idea is that I want my son to have an experience that is fun, that is enjoyable.

I am trying to build an entire world in support of his struggle, but also to celebrate him and other dyslexics like him.

I personally see my son. I see him as smart, I see him as gifted, amazingly creative. If I have problems thinking through programming problems sometimes I talk to him about it to get his insight into other ways of thinking. My son is endlessly creating, he is always learning, he is not afraid to try new things, I see his intelligence each day, and I know there is no way this is going to hold him back in life.

I don’t see my game as an end all to approaches for dyslexia, i’m hoping it can be used as another tool, hopefully a fun one, to engage a child’s brain and creativity rather than pushing them to memorize and work through frustration. I’m not even judging the various approaches to working with dyslexia, but like the variation in personalities and brains, they don’t work for everyone and I just want to tinker with this a little.

There is a lot I’m not saying in this opening confession, what else I’m doing in the game, what some of the goals are. I’m hoping to make something that is artistic, and helpful, but it’s a long slog, especially when you are creating alone. I work daily with sometimes self imposed goals, like how can i make this beautiful, but also have it playable even on not very good computers? How can I make this enjoyable and keep drawing the child in for the ride?

I still have much work to do, but I realize at this point it might be the time to begin talking about this game, and how a visual thinker is trying to work with something I perceive as a visual thinker problem.

Unreal 4 : Save Game & Peer Support

daevGame1

Having prototyped my “edutainment” game a couple months ago, I had to pull back and make sure it was still running at a good speed, it wasn’t so this had me reconsider how much of the game I was streaming at one time as well as remodeling whole buildings and reducing textures. After that I had to work on my Save Game system.

A save game system is a very key part of the making a video game. To me it’s a big part of what breathes life into a video game. I like to think of ways to breathe life into a game, like the floating lanterns above, the subtle sounds and movement that adds to a game.

However, there is something magical that happens that most don’t think of when you can return to this virtual world and find things where you last left them. More importantly though, no one wants to play a game that they can’t save out if it takes more than an hour to play.

Unfortunately with all the tutorials and documentation about making video games, it is somewhat neglected and confusing area. Because I think the save game system can influence how the game is made (and how much time it takes to make it) I feel it is something that shouldn’t be neglected. If i had my way it would be the first thing that works right out of the package.

While at places like Rhythm and Hues I enjoyed manipulating lists of objects in ways on the computer, and over many years I got very comfortable doing this.

I found very quickly that as I generated lists of objects in my game that can be moved, that I had issues to surmount and that it is not quite as straight forward as at R&H. In particular, and as far as I can tell, to save out the positional information of objects they need to be classes. So a chair for instance would be it’s own class. I have a game that uses the alphabet, in several different iterations, so I had many classes that I had to identify and save out. That means if there are thirty of the same class of chair, one function will save all thirty but I need another function to find the other classes, like the boxes, the letters, the doors etc so I can save their states. My still somewhat clumsy skills in scripting in UE4’s Blueprint package, means that I had to laboriously put together smaller functions that scan my game for the different classes. I had to do this many many times, and I’m sure in the future I will learn quicker ways to put this together, but for now its’ about moving forward with what works as long as it doesn’t impact game play.

Not working in the industry with lots of people around me to pepper with questions about something that i know should be an easy data manipulation can feel daunting with new software. It took a great deal of digging on the web and lots of experimenting. I would probably still be struggling if not for the video above by Joel George who responded to my request to him to help me with a save game function for object positions. Here’s Joel’s response when peppered with questions by me a few weeks ago.

https://www.youtube.com/watch?v=MLqypbTyZG8

Much of what I find on the web is more about saving high scores, and what level the player is on, which are simple variables. Often what people demonstrate is very specific to their game play, and often may take a lot of wrestling with to get to work with what you need. What i’m doing is more like an adventure game, where I want to know where the player is, what she has moved and what puzzles they have solved. Joel demonstrated something though that many people demonstrate on the Unreal forums and on youtube and other places, a willingness to grapple with the issues others have, and offer their help in resolving them.

daevGame2

So often we hear about the people who snipe on the web, and those who bully people, but Joel and others abound on the web. The community that shares in these videos help to create a sort of virtual game company, that shares information making a small team feel robust.

Of course it is no small thing what Epic Games has done with UE4, so that the might of the Epic team is behind little indie games.

https://www.youtube.com/channel/UCo0SuStzZSPoti7STK4JWCg
https://www.youtube.com/user/TeslaUE4/videos
http://romeroblueprints.blogspot.com/2015/01/save-and-load-in-blueprints.html

https://www.unrealengine.com

So I’m grateful to this community, Joel, Tracey, Tesla and others who give me loads of information or sometimes one small clue that makes me crack something bigger that I’m working on.

Gaming Around in Edutainment, er um... Edugamement?

Studio time for me is always limited for a stay at home dad who home schools, so I always have to pick my battles. For the last couple years some of that battle has been chosen for me by nature, due to Colorado Floods and lately the threat of more floods. Right now I am just finishing up my barn designs (in Sketchup, actually my blueprints should be ready to pick up today), that means part of my brain and time are freeing up to return to other personal projects like my video games.

A view from my currently untitled edutainment adventure.

A view from my currently untitled edutainment adventure.

Untitled Edutainment game by Daev.  In progress using Unreal 4.

Untitled Edutainment game by Daev. In progress using Unreal 4.

I hit a technical wall with Unreal 4 previously, having decided to use this instead of UDK which was littered with unresolvable issues related to save game, shadowing large scenes that included landscapes and foliage and other problems related to streaming levels (and shadows). When I took up Unreal 4, the word was that it was far easier to make games than UDK, but the problem is the learning curve is much higher to digest much of the new ways to do this, and I just didn’t have the time to devote to it.

It was really my visit to Los Angeles that gave me the inspiration to dive back in again, having spent time with friend Michael Conelly at Black Thorn Media. http://blackthorn-media.com

I found keen minds to discuss video games, game engines and new tech like the Oculus. The enthusiasm of Michael in particular left me with that desire to dust off my games.

Some of the reasons I wanted to dive back in surround the interest I have always had in using games in education, or maybe closer to Edutainment, ( boy I hate that term, can we think of something better?). This desire came about in the wake of leaving the VFX industry and Hollywood, to spend more of my time as a dad instead of someone doing overtime crunching on films, or time on L.A. freeways commuting ( a part time job in itself).

Splitting work time/family time with my wife, I tend to visit a lot of museums with my sons on my days out with them. I can’t help but look at museums and my visual thinking mind kicks in and wants to come up with improvements in giving information to the people visiting. My visual effects mind kicks in and starts dissecting what would be a better way to produce the graphics, and my latent scientist kicks in and wants to simply make this stuff more interesting to kids rather than reading a dry placard packed with facts. I want to see their imagination kick in, and get them to use their hands to interact.

denverScience

Part of the ongoing issue I have with the museums we love so much, is that so little of the tech changes. Aside from being expensive investments, the main reason for this is that museum displays are often built by people who build entire displays that are resilient to lots of abuse, but the software to me is not overly impressive, it is typically far less interesting than anything you could possibly do in video games, and this is important considering most children play sophisticated video games, that often look far more engaging than museum work. (Excluding Planetarium work here which is another subject entirely). Here’s an example; to give my sons an idea of what ancient Italy looked like I took them into Assassin’s Creed just to climb around the city and explore. To them it’s like going back in time. Aside from all the killing involved in titles like these (which I do none of with my sons), they have the potential to be great edutainment portals instead of games of mayhem and death.

assassCREED_2

My sons asked me recently what happens to the environments for games like Assassin’s Creed and I told them that they all go into a digital land fill, like Atari’s ET went into a real landfill. Sensitive souls, they mourn this loss like me, because to me these would just be great places to explore minus the killing and adventure. This is not a commentary on the video games themselves, or their value, but that there is another intrinsic value beneath this, that I don’t think is getting tapped. That sounds lofty I know, but consider how Google uses satellite imagery and models from Sketchup to make a very full experience in Google Earth. The possibility expanded when they allowed us to view cities back in time, albeit in a limited blurry Sketchup quality way.

googleCREED

Part of the problem with software at museums is that I don’t feel that it gives a real sense of grandeur and inspiration that can come from visuals, so in effect it feels like so much of this software is being developed by people who are technical, but not necessarily visual. Children are very visual, and since I have child like brain dammit, I think I can take some of that child-like expertise into this realm.

Progress is picking up for me in my studio again, but I’m still digesting some of the new ways that Unreal is using blueprints in their engine to create things. It is NOT entirely logical to a visual thinker. The engine is more impressive than ever, the visuals are stunning and I see the potential speedup after I get through some technical hurdles. There are freebies such as calculating large areas for A.I. to navigate about which was a huge time strain in UDK. Reflections and other subtle effects are improved and not for the first time Unreal’s Render reminds me of my Alma mater in visual effects, Rhythm & Hues who had a stunning renderer that I often miss.

Untitled Edutainment or um, Edugament.. by Daev. In progress using Unreal 4

Untitled Edutainment or um, Edugamement.. by Daev. In progress using Unreal 4

I’m hoping to have my test game level dummied up in the next few weeks. Dummied for me of course means that I try to get pretty far with the models, textures and lighting. I’m not trying to take this to Assassin’s Creed levels visually, but there definitely is that possibility, although it’s a lot to put on a sole Indie developer and I have other edugamement game to work on, okay, I can’t think of a better word, edutainment ideas in my notebooks that I’d like to get to as well, sorting through NASA imagery right now for some of those.

UDK : UE4 Arrives

This week with GDC’s arrival, Epic Games announced the arrival of UE4 to everyone not one of their beta developers. With a new subscription plan, the software is $19 a month, plus 5% of gross revenue. It’s a deal that puts a game company at the finger tips of many indie game developers.

UE4 ARRIVES

After using UE3 just a couple days I would say that it’s possible they’ve taken some pointers from Unity, or maybe they’ve just moved permanently away from the graphics interfaces of old. Now widgets can be customized and set up to a user’s liking. In essence it has more of Unity’s simplicity and even the layout overall. I’m not sure if Unity is influencing Epic, or if there is just becoming more of a global expectation with 3D programs. Programs like Maya, Unity and now UDK are starting to match philosophy and layout. This may seem random to some, but take for example that until we showed Autodesk the way we use Channel editors at Rhythm and Hues, they hadn’t even had the channels available. Now the same channel editors have become par for course in software across the board.

While some of the graphics choices are a bit larger than I’d like (they take up too much real-estate than they should on a laptop) overall they feel much better, more up to date than the old.

Another oddity of UDK in the past, was saving game packages in the Engine location on the disk. This was always a dangerous prospect to me. Now, when setting up projects it sets up the project to the User/Documents area of your drive.

Blueprints vs Kismet : Blueprints is the name of the graphical programming editor that replaces Kismet. Kismet was in need of an update, and having just gotten started I can’t say too much about this, except that the idea of making kismet “prefabs” seems to be more the plan now.

Static vs Dynamic : Another change is that in the properties of a static mesh, you can decide what the physics properties are without having to convert the mesh to a dynamic mesh.

Game Types : There are some out of the box game types you can use to set up your project; side-scroller, third person, etc. Again, it seems to borrow from the simplicity of Unity, but with the working guts of UDK that has been such a draw to developers.

There seems to be a simplicity of philosophy in the new software, a real move to encourage artists to get in and work with the tools. Although at the moment I’m still getting used to a house where someone has moved all the furniture around, it’s a move in the right direction and very promising.

UDK Static Shadows on terrain

One of my pet peeves with UDK is the surprising quality of shadows as a default on terrain. Seen here is a sequence of images that simply goes over the process of shadows in UDK. I’m sure this is not a mystery to the folk at Epic games, after all the demo games that come with UDK are typically built with BSP brushes and meshes rather than relying on the overhead that comes with complex terrains, and it’s something to take note of.

Some starter info : I’m using a moonlit night, but I have turned down some defaults in UDK.

Under World Settings : I like to turn my Environment color way down, there is simply too much light bouncing around for me. So I set the color dark, and then I set the Environment Intensity down as well. This makes it much more shadowy in my worlds.

shadowWORLD_PROPS

For this test environment I’ve also turned off the default exponentialHeightFog, to keep the scene clear. The only thing I am altering in these renders are the lighting attributes on the Terrain.

NOTE : Although I will crank up the resolution of the shadow it is not recommended to do this for your game. This is A SIMPLE scene and merely to DEMONSTRATE the change in shadow quality, but real world tests of your game will show that this will not only be costly in time to bake your shadows, but also will create overhead in your maps that are loaded into memory.

FIRST RENDER : I set up a quick environment to show what shadows of my trees will look like on the default UDK ground. It’s passable, we have shadows out of the gate.

treeShadows_1

SECOND RENDER : I added a 16×16 terrain to my environment, and added a quick grass texture. There is no height change in this render, so it should be pretty clean. Now, to the new user of UDK this will look pretty promising. This is a render from the Editor window, but it’s deceptive and disappointing. When in editor mode our shadows are dynamic shadows, because they haven’t yet been rendered. To use dynamic shadows throughout our game would be very heavy in UE3 (we’re promised real time shadows in UE4).

treeShadows_EditorWin_1

Confusing to many who setup a scene in UDK and are seeing great shadows, is the surprise of going into game mode, and seeing your shadows evaporate. The reason can be found in the terrain’s settings. You can see the Static Lighting Resolution is super low, this line and the entry below it are what we want to focus on.

treeShadows_onTERRAIN_Default-SETTINGS

THIRD RENDER : Static Lighting 2 :
This is what the shadows look like after we bake out our lighting. There is simply not enough resolution someplace, so we lose any fidelity in our shadow renders. If we double click on the Terrain, our terrain Attributes will come up, and we can see the default static lighting Resolution is set to 2, and that Override is turned off. (Actually this is a mistake, the default is actually a more discouraging 1 – and that number can not exceed 4 without hitting Overriding Light Resolution. If overriding that number doesn’t make you nervous it should. You have reached a dilemma, and will face quality vs speed issues after that number goes up.)

treeShadows_onTERRAIN_Default

Now we can start doubling that number to 4 and 8, but our progress making better shadows will be slow. So we jump to Default Static Lighting : 16 However, before you type that in, make sure Overriding Light Resolution : is ON ! Otherwise it will bounce back to 4.

treeShadows_onTERRAIN_set16-SETTINGS

FOURTH RENDER : Static Lighting : 16
In this render we can see a great improvement in our shadows. Remember at this point to Play your game and make sure the shadows are the same as in the editor window.

treeShadows_onTERRAIN_set16

FIFTH RENDER : Static Lighting : 32
For this demonstration I’m doubling my numbers and keeping them power of two, but this will not be our end game, this is more about demonstration. We are seeing a much higher quality and I could live with this render and get back to other tasks. Still, I want to push it one more notch and see what I get.

treeShadows_onTERRAIN_set32

LAST RENDER : Static Lighting : 64
A thing to note is that I also turned on specular highlights on my terrain in the attributes, but here we can see a higher quality. It looks good. The trade off will be how much time I am willing to wait for shadows to bake to get better results.

treeShadows_onTERRAIN_set64

This tutorial was not meant to be an end all on the subject of shadows but I hope it gives guidance to the issue of what happens to terrain shadows, so that someone making a UDK game can consider some of the hidden things about UDK before proceeding too far in design. Shadows themselves are a complicated area, the information will vary for different types of objects. Terrain, static mesh, dynamic mesh all have different requirements. There is also a zone around the player which has dynamic shadows, and may be seen at times as it follows the player through the game, this is because you will have a near area in game you interact with in terms of lighting, casting your own shadow, or using a light that is carried in game).

One thing that is clear, for now in UE3 if you set your shadows to dynamic your game will not likely be able to handle shadows for long, although it will be tempting to use, you need to think smart about how to bake shadows, set up lighting UVs on objects and break your game up to make sure the lighting can still bake. Be careful how much you crank up that number for static shadows while you’re testing.

For the record : I am currently using a Static Lighting value of 10 in my game, but the results in overhead will vary depending on the size of your terrain, and the number of materials you use to paint your terrain. These numbers make my lighting too heavy to bake out daily while developing. I test small areas of my game by keeping my game areas as streaming levels, so that I can test parts of the whole and consider how to make my work, and game more efficient, while still trying to make the game look good.

UDK can be a very intuitive software to use, but shadows are a sticky point in UE3, that will challenge your patience as you wait for scene lighting to bake out. To me the end result is one of the most rewarding but lack of computer power for an Indie developer makes it one of the most challenging to deal with.

Uncorporating.

Can I coin the word, Un-Corporate, instead of Incorporate?

Incorporate carries so much pressure in this world, you must incorporate to create a business, and businesses are typically about getting bigger, making more profit each year, and getting the goose to lay as many golden eggs as possible. Corporations are usually interested in the bottom line, not the individuals in a company and many companies are guilty of not treating artists well (I’m referring here to the visual effects and gaming industry but the same can be said about many corporations I’m sure. The bottom line is workers at most companies are not part owner of the company, they fill a role and as one manager told me, everyone is replaceable).

I’m not a big supporter of the must grow model. As an artist, the idea that corporations can drive art never seems like a good plan to begin with. The idea that companies think that they can just grow infinitely seems beyond flawed, after all we live in a world with limited resources, yet we have this paradigm that everything must get more profitable (i.e. sell more stuff) every year. Can we really?

Let’s look at the latest criticism of a company like EA games, who won the award two years in a row for worst company. Their focus was on releasing games on time, and making sure no one could hack their games, is how the story goes online and it’s likely true. I’m not saying that they aren’t doing amazing things, but there is a clear focus on deadlines and profitability over all else.

Then there are companies like Mojang, who created the ever-popular Minecraft and have until now resisted the pressure to go public with their company, and I applaud them for not falling into this trap. Go bigger, let someone else own you, and then watch yourself implode when your investors are disappointed with their returns. The day Mojang opens up to the stock market, I’m thinking their days are numbered, or at the very least their creativity will suffer for profitability as the company becomes a true Corporation.

As an independent artist, that likes to make games, write books, and paint I’ve been more about keeping things small and getting more and more personal at this point in my life. For big companies efficiency also means the opposite of what I find I need in my life. Artists perform smaller and smaller pieces of production.

When working at Rhythm & Hues I once proposed we go the opposite way, and put scanners at artists stations, give technical directors zbrush, photoshop and anything else to make us creative. This was not one of my most well received ideas.

I realized over the years, that I’m an artist who likes to work in his studio and have all those things at my finger tips so I can do just that; explore, create, make mistakes and try again. I like being an artist who learns different thing, so yes, I enjoy using game engines, and sculpting in Zbrush and painting in various painting packages. To me the more experience I have, the more effectively I should be able to wield my preferred mediums, but in the corporate art world, this is not a paradigm that typically exists. Artists see one small part of the beast, and as you gain experience you are encouraged to stop practicing the trade to manage teams of artists, until eventually you are cut off completely from the thing that you once did as a creative endeavor, in favor of a pay raise and a title.

I guess the bottom line for me is that I hate to be pigeon holed. I love to paint, and I love to create on the computer, and write, etc, and yet there are some things I miss about working for a big company which is what brings me to the wish to Uncorporate.

—-

What’s missing, in working independently in my studio is my daily interaction with friends and colleagues, creative people.

It’s true, I have sort of a paleo-lifestyle. Not only do I work from home, but we try to foster a lifestyle where we are with our kids, so we home-school, my wife works from her office and this all makes things more complicated I admit. It means working for myself I don’t just have unlimited time in my studio, for now it means my time is somewhat limited, but then again the time I spend in my studio is of my own choosing right now, and that’s a pretty big gift which is in no small way due to the my wife now supporting us as I dabble in various arts, since I quit teaching a year ago.

Once I’m working in my studio though I feel that loss of community that I had at corporations and even teaching. I want to be able to share my ideas, or get feedback on why a particular piece of programming isn’t working. Instead I find myself going to facebook to see what people are up to, and I end up reading five little articles and get completely sidetracked for an evening from my goals.

Now it’s true there are forums I can go to and sign up for. There are Indie gaming communities, there are places like Unity forum and the Unreal Game Forum. These places though are not exactly communities in the manner that I’m hoping for. For starters, I don’t really know who people like “Snake-Man” are. People hide behind Avatars. Hiding behind Avatars means you don’t have to actually connect with people as humans, and it makes it easy to troll sites and knock people down. There’s a lot of trolling on sites, essentially you’ll ask for help on a tricky bit of code, and get a vague and condescending answer which is the equivalent of “fuck off” but not in so few words.

I have just found a writing community here in Boulder. They are real people and not avatars. They get together every two weeks, and this has lead me to my idea of Uncorporating as an Indie game developer.

The idea in essence is to get some like-minded indie game developers together and start my own private forum. It would be a forum by invite only to allow some isolated indie game developers to have a place to find critique and support, and where their work would stay private, not get exposed to the entire web but to a select few that choose to Uncorporate.

The idea of Uncorporating is to share in a way that is not competitive but supportive. I feel that there is some loss working in a vacuum and that independent teams who band together can be more than the sum of their parts, and have a better chance at making creative pieces.

That’s the theory anyway. Look at film-makers such as Guillermo Del Toro. He credits part of his success to bouncing ideas off of people like Alfonso Cuaron. His small group of independent film directors would critique each other, and support each other and I believe it made for a strong group of like-minded directors doing unique works as seen in works like Children of Men, Pan’s Labyrinth, The Devil’s Backbone, Gravity.

So that’s where I am. I’m on the fence, trying to decide if I’ll launch my small forum, to Uncorporate as it were and find some like minded indie developers to form a small community. I’m not sure what’s stopping me at this point, self doubt, fear or rejection surely (why won’t Guillermo Del Toro return my emails?).

My web developer tells me, “If I build it they will come” but I feel skeptical and yet longing for some of that community that I once had around my work.

UDK Strategies in Rendering Shadows

I want to start off this blog today by saying I’m hoping to work with Render Rocket with the goal of opening up it’s render farm to game companies big and small, using the UDK swarm renderer. I’m wondering if there are others out there who think that would be a good idea, to have a farm to render those big ugly game scenes across hundreds of processors.

levelSTREAM_sample1

Here’s why this is on my mind today; Anyone developing video games using UDK software is probably used to seeing the error during gameplay stamped in red in the upper left corner of their screen. “Lighting needs to be rebuilt”. It’s a painful reminder that your ever changing scene has impacted the shadows and as it grows, that render time keeps escalating.

The reason this comes up, is that in order to keep your game from bogging down, you don’t want to simply flick the switch on for all your objects to use dynamic realtime shadows (although it sometimes is cool). Instead, we bake out shadow information, based on a second set of UVs for each game object. It’s complex, and World of Level Design has the best tutorial on setting up those secondary UVs for objects that I’ve seen.

http://worldofleveldesign.com/categories/udk/udk-lightmaps-03-how-to-fix-light-shadow-lightmap-bleeds-and-seams.php

As I get into refining my game and trying to lock down lighting and remove any errors, I’m a the point now where I need to clean up errors like the “Lighting needs to be Rebuilt”. My goal now, to see if I could circumvent my long render times by baking out lighting in packets of information rather than trying to ram the entire game level down my quad-core’s throat at once. I’ve done this, but once my render times shot past five hours, I didn’t want to leave my little laptop heating up that long without breaks.

This lighting error I’ve mentioned will pop up (irritatingly) whenever you move a mesh in your game, move an existing light or add a new one. It demands that your lighting be perfect, if you want to do a final bake out of your game. For many people this may not be an issue. The tactic is to create contained game levels that are typically interiors. On paper the game level design often looks like a map taken right out of a Dungeon’s and Dragon’s playbook. There are a series of rooms illogically connected together in terms of architecture, but that are constructed in order to minimize engine overhead in gameplay, and just because, hey, it’s cool.

levelSTREAM_sample2

As games get more sophisticated this becomes a problem. By sophisticated I mean that games actually have exteriors and interiors. So a game like Dear Esther for instance, if it was baked out on the UDK game engine would have required baking out the island, and all the foliage on the island would be potential light breaking errors. For us indie developers this can be a problem.

In the games I’ve always gravitated to creating, the environments are a mix of exteriors and interiors. To make this more complicated often the interiors are integrated with the exteriors, in that, part of the game play is that you can see outside (that’s part of the suspense). If you want to avoid super long render times, you could start by not doing this altogether. Your game would be closer to something like Silent Hill: Homecoming, where there is a pause as new game levels are loaded, and unused ones are unloaded. In that scenario seeing outside is often masked either by fake scenery out a window, or by the old foggy window trick.

Increasingly games are not doing this, a game level will be a mix of interiors and exteriors all loaded up together, a good example being Resident Evil 5, where the exteriors help give the flavor of the environment, and the environments (sometimes a small row of shanty houses) are perforated to the exterior and too small to make a separate game level by themselves.

ARCHITECTURE ELEMENTS:

To get around loading up the game all at once I like to Stream Levels in game based on distance (and visibility). So a building will not be held by the engine when you are a certain distance. The strategy I came up with is to build most of my lighting and kismet programming in my “landscape” level, which in UDK is known as the “Persistent Game level” and is the automatic level you get when you start building in UDK. This also solves the problem of holding game information between levels in your game. So if you need to know you picked up the “gold key”, the persistent level holds that information, and the persistent level is always loaded.

For lighting I then break everything out. For instance I have an area of my game called, “the Village” and in order to keep things organized on my computer, I name things like this : Stream_Village_A. I always use a letter at the end, in case I add more parts to the village, numbers are confusing because they mean iterations, letters identify this as being part of the village but just a separate level to stream in.

levelSTREAM_sample3

My strategy for rendering shadows is this at the moment : I unload all my streaming levels in the game. I turn off dynamic objects that I don’t want to cast shadows (those are in streaming levels that are prefixed, DYN_Village_A for instance). I have a separate breakout of game parts for doors which I want to turn off when baking out my Navigation paths for AI. The doors will be prefixed, DOOR_village_A.

Once everything is off or unloaded, I start loading in things I need one at a time. I do this for the reason that I want to identify errors and because I want to render parts of my game as quickly as possible. This strategy works really well for baking the architectural elements in my game. I turn on the village, with the persistent level and five to ten minutes later my lighting is up to date. Then I bring in the mysterious building level, and turn off the village (I can unload it from game if I saved out and reload it later if I like). I basically bake only what I need to keep this moving.

Later on, if I update STREAM_VILLAGE level, and want to rebake the lighting, I need to reload it into my main game, and render with the Persistent level on. The baseline thing to know, Persistent level is always on when I render a streaming level and whatever lights are in game are present.

TREES :

When it comes to trees, my game is ambitiously filled with hundreds of trees. In order to keep the rendering lower, I have broken them up into areas, I try to max out at 50 trees. When streaming by distance I try to locate the tree central to that mass, and use that as my fixed point. Then with Persistent level and trees on, I bake lighting again.

While this strategy becomes more difficult in regards to rendering with trees it is still doable. I keep my processor from overheating and rendering for nineteen straight hours by rendering in chunks like this.

FOLIAGE :

Admittedly, Foliage is still a problem for me. I am using the newer Landscape feature with UDK, and as such I so far have not been able to separate my foliage by LEVELs. This is problematic, because I see the foliage as providing much of the character of my game. To date I have in my persistent level 86,000 meshes for the grass that I cannot bake out separately, and i’m contemplating what is next in problem solving this issue. Note : I don’t even need my foliage to cast shadows, but the goal is to also have the game engine okay with that strategy and not stamp me with the dreaded, “Lighting needs to be rebuilt” error. Even if I can repress that error (Not sure I can) to have it there makes me suspicious that something I want rendered correctly is wrong, if something I don’t care about (grass) is misbehaving.

Note though : In order to work, any lights that are in other LEVELS of your game, need to stay in the game. This is because in their absence lighting gets rebaked and that changes the lighting if you remove them. This is a little more complicated than it sounds. So if my STREAM_MYSTERIOUS_BLDG has several lights, once I bake it, I need to keep that lighting in the game. My tactic right now is to NOT have separate lights in my streaming areas, but to keep them in the persistent level only.

RENDER FARMS

Back to render farms. UDK has something called swarm rendering, (Not smarmy rendering although there is something smarmy about it). Swarm rendering will send out your game to multiple machines on your network. My network of computers is two, remember, Indie game developer. It’s hardly worth the time to setup, and not likely to cut much off my render times. Instead, when rendering I typically switch machines and do something else on my other computer that I need to do.

So I’m stuck with the limitations of the game engine, and my computer power.

While writing this, this morning I have heard back from Render Rocket that they are interested and would like to work with me to see if we can UDK to work on their render farm. No promises, but we’ll see where this leads.

Hallow's Way : UDK workflow for an Indie Game.

Making games for me, is like writing short stories as I’ve said before. I can be spinning several ideas at once. Recently I changed directions and focused on a short story game, working title, Hallow’s Way. I had been hoping to get it done by Halloween, but flood waters and rebuilding have slowed progress to a grinding halt at first, but I’ve been steadily getting more time to finish the game.

The main inspiration for the game began with a familiar urban legend, the “Green Light Cemetery” in New Jersey. It’s not the first time I have visited allegedly haunted places from my childhood and won’t be the last, but the real inspiration here is the fascination and fear associated with seeing the green light in the woods above the cemetery (which I do believe my younger brother Ron, and I tried to find with our intrepid childhood friend Michael Weimer). The question is, can I capture some of that fear and fascination in game play? Additionally when I’m testing a game, I try to make actions surprising enough that I too can be surprised. If I don’t have a surprise moment, or sudden fear as something unexpected happens, then I don’t feel i’m developing the game correctly. I want to be immersed in the game myself when “writing” it.

creepy doll, from my scary game... whose details I'm keeping purposefully vague.

creepy doll, from my Hallow’s Way… whose details I’m keeping purposefully vague – except to say the original concept was inspired by a Dave McKean illustration, and although the model has changed drastically from the original inspiration, I have considered putting Dave McKean in my game in some way as an incidental character – because he’s awesome.

One reason I want to work on a very short story game, which is the way I think of Hallow’s way, is that I’m still getting used to the UDK game engine. I can put together a game level fairly quickly, but completing a game from A to Z, is a different matter. Aside from testing a game, there are menus, writing artificial intelligence, and then of course creating all the assets for the game.

Since my time is limited in my studio and working on my games, one of the things I try to do is to be pretty quick and nimble. I try to accomplish things swiftly so I can move on. The creepy-doll as seen above is only a couple hours worth of work, and then another couple hours of testing the AI and getting him to work properly in game when needed. Thankfully tools like zremesher in Zbrush allow me to cut off additional time that I have previously spent making low res models for games. I’m showing this one creature of course, but he is a small part of the game. The reason I’m vague about this is not because I’m trying to hold back on what I share, but because I want to hold back if I intend to scare.

Aside from creating a list of creatures (there are fourteen others for my game) my unfamiliarity with UDK means I’m still building up a resource library of various types of AI and many other game elements. One of the things that people like to brag about UDK is how quickly you can basically create a game using resources from UDK, like their bots, or soldiers, and their environments. Additionally, people like to use the BSP brushes in UDK to create game levels quickly. A BSP brush is a brush where you can come in, create a rectangle quickly, and essentially “model” within the game package. It’s a pretty good way to test things out, however, the problem is that these are not real models. You are generating procedural models within the game engine, and to alter them you have to add or subtract. You can’t make a complex building like the Sistine chapel, and then decide to move it ten units to the left. Most people use BSP brushes to make fighting games, or Tournament games. These are fast paced (and rather pointless) games about kill or be killed. I’m not saying people don’t do amazing things with game environments and that there isn’t a lot to learn there, but it is a direction that I prefer not to go in. It’s also a type of game that I’m not interested in creating. There are no guns in my games.

My method of working is to work with modular pieces to create environments, and to do that I have had to build up my own modular library of buildings, including trees, creatures, and effects like smoke, rain and fog.

Test area for game.

Test area for game.

When I’m working in my game testing is often one of the more labor intensive parts. There is a large game level to test, and I explore it and poke at it, and try to engage the AI. The image above is a snapshot, not of my game actually but of a test area when I’m developing tricky things in my game. The reason I work in a test area is to do fast tests. I don’t want to spend twenty minutes waiting to engage my AI all the time, I want to write code, and then get into a small test area to see if it works as expected. The game area above shows a few things that might look odd to someone who isn’t familiar with engines, or UDK. There is an overlay for instance for the NavMesh. I was testing this level to with NavMesh to see how to fluidly get AI to go up stairs, and slopes to higher places than the ground plane. In the Unity game engine, I can generate a NavMesh (which stands for navigation mesh that the AI use) and it will take in the area I have in mind in three dimensions. In UDK it is limited in how high it goes in z to about the height of the player, which is odd to me. So I test this to figure out solutions in this small space quickly and to see how my AI navigates problems that I put in it’s way.

One of the things you can see are things that look like large alphabet blocks. These are models I’ve turned into rigidBody objects, or KActors in UDK. KActors obey physics. I can program my AI to interact with the rigidbodies, and I can also scatter rigidbodies in the air, and have them become live at game play to randomly scatter their location. It’s one of the things that I do to randomize a game, which I love to do. One thing I question in games, is the locked down world that you enter. Many games people present an environment where you solve a puzzle, and the puzzle is always the same. So you try and retry the puzzle until you solve it. People often replay games, and the puzzles presented are in the same exact pacing and location, nothing changes. One of the things I try to create in my games is the sense that this world is shifting when you start a new game. Another concept I’m trying to explore is the possibility of the game shifting during gameplay, which I’m going to stay vague about so again, I can maintain the element of surprise in the future.

One note about rigidbodies is that I put rigidbodies in a different game level, that is on when game play starts, but off when I generate my NavMesh because the idea is that they will be movable. If the NavMesh generates a wall around them, the assumption is that they will stay static. When I talk about different levels, I’m talking about chunks of the game that I can turn off, not “leveling up” as it were, although this could apply too. I can have a game level, where different chunks of the level go on and off, depending on your location. This can save in how much data the engine has to crunch while you’re playing, and it allows me to also separate some things out for other reasons, like for keeping my NavMesh clean as stated. I’ll give you a solid example. I created a navMesh and forgot to turn off my rigidBody level. When my AI moved through the game, they stopped on the stairs because the random objects were in the stairwell and generated a navigation mesh that saw them as permanent obstacles.

Yes, I jump back and forth between talking about generating art and story and the technical side of games. I try to understand the technical side, yet my goal is to get the technical things out of my way so that it becomes second nature, and quick to execute. I believe that more and more as I create “small” games, the library of pieces I have should allow me to write more short story games, without the huge delay involved with creating a whole new system. I’m not saying that each game doesn’t have new elements you want to add, different AI, more involved story as you get better, but you keep building a library and refine your approach rather than re-create the entire engine you made.

I think it was Stephen King, who talks about writing stories, and how there is a perfect storm that happens with an idea. You have an idea and put it aside, and then over time. You collect those ideas and don’t necessarily force it out, you can’t. At some point though the idea comes out by itself. It could be something small that happens and creates that perfect storm and makes your idea clear. The problem with trying to come up with short story game ideas is the delay in developing games. The solution for me is to continue to build a library, so that when lightning strikes and the game idea comes, I’m ready to create something more fluidly.

Actual shot from my vague creepy indie game.

Actual shot from my vague creepy indie game.

When the technical and artistic prep work is done, the short story comes in creating the gameplay. Elements like my fog and rain effects are important to me in my game stories for creating mood and movement. The same is true for sounds and music, which of course is where my games suffer the most since I am not a musician who composes music.

All of these things though can come together as part of a composition. There are million things you can do when creating any story, and the question always is, what do you need to do to tell your tale, and what can you leave out?

Other locations from my childhood appear.

Other locations from my childhood appear as incidental characters in game.

Frictional Games

I have been sitting on some technical/art books for awhile now, compilations of things I was teaching and running the Game Art department at RMCAD. However, in the last few weeks a favorite game company of mine, Frictional Games, has released a new title : Amnesia : A Machine for Pigs.

amnesia-1

So since my brain has been elsewhere lately, and because I feel it is timely to discuss Frictional Games right now, I thought I’d put my chapter about Frictional out into the world, because honestly I have no idea when i’m going to finish my books. The goal of the book of course was to be a companion to programs at art schools where students were studying making video games. The idea was to talk about budgets, stories, design, all based on the program I created at RMCAD. In the book I also planned interviews, the first one I did was with Jens Nilsson of Frictional Games.

It isn’t just for students of video games that I have this in mind, but for friends who are in transition in the wake of the collapse of VFX/Animation around the world. You see, one reason I’m a fan of Frictional is that their games are awesome and scary. Another is because I believe that the paradigm of big companies is not the only paradigm, and that indeed more interesting stuff is being done by small creative teams like Frictional. Additionally Frictional does something that I used to do, they telecommute. Something that places like R&H were one of the first to try, but later became hesitant about. However smaller teams can do this because it keeps overhead low.

I’m all about keeping overhead low, and creativity the priority.

Okay, here is the chapter thus far.

I wrote to Jens Nilsson at Frictional Games, the game company behind the Penumbra series and Amnesia to get some quotes for this book but Jens’ responses were so grounded and open I decided to print the interview completely here in a chapter by itself.

Frictional in my opinion are one of the most creative and insightful companies regarding games and well worth listening to for any indie developer, and probably worth paying attention to if you are one of the big companies burning piles of money.

Daev : Is it true that you all went to school together and developed a game engine in school ?

Jens : More or less, to not go into too much of the details: I studied at one university and a friend in my class came in contact with Thomas over the Internet. Thomas was then studying at another university.

A year later the three of us did a thesis and game together called Energetic, the first version of the engine was created by Thomas for this game (I think he used some parts from an earlier project of his). The next year Thomas and I were part of a group that studied over the Internet and part of those studies were to do a game modification, instead of doing a modification, a second version of the engine was developed by Thomas and was used to what would eventually become the penumbra tech demo.

Three people from that group continued working with a new game, Penumbra Overture and this is when the engine was updated once again and finally became the HPL engine that was used to create the three Penumbra games.

Daev : Assuming you went to school for programming what lead you to video games?

Jens : It is the other way around I would say. While I am not a programmer, rather one of the things I do is scripting (or perhaps gameplay programing some might call it?). My interest in video game development was there long before I did any studies related to it. The same is true for Thomas. Both of us have experienced the urge to create something of our own when playing various games growing up. In Thomas case it meant that he started programing and doing projects on his own with a tad help from others. In my case it was doing modifications to games and eventually sound and music for games in collaboration with others that eventually created the know-how and interest for all sides of game development.

Daev : The story goes that three of you worked remotely and met everyday online for meetings and to review progress.   Is this true?

Jens : Yes, we were three people that worked full-time on Penumbra Overture. We did this from our homes and communicated mainly through text on, I think it was, MSN. We used a SVN server (still do) for the development process, so we could easily work together on the project and constantly experience the progress.

We were not only three people, we had help from contributors that did for example music, story writing and audio programming on the promise that if we got the game completed and managed to earn any money on it they would get paid (as we had no money except our own saved money we lived on while working). We did manage to get the game completed and we did manage to make deals with the game, but unfortunately not all of those deals were with serious companies, so we had problems earning money on it. We did eventually pay everyone the promised amounts but it took almost a year after the game was released, while not an ideal situation we did manage to keep the company going.

Daev :  How big is Frictional now, does the same paradigm still hold?  Three guys working remotely?  Six?   25?

Jens : We are now 10 people that work full time at the company, but it is the same structure of remote work from our homes. We also have outsource people like in the past and work with larger outsourcing companies for certain bits (such as producing lots of filler objects for levels). We have often talked about getting an office, but the problem is that the 10 of us are spread out over Sweden, Spain and the UK. We are quite happy were we are and not too eager on having to move all to the same city…

Daev : How long did it take you to develop Penumbra, and was it just the three of you?

Jens : We began on Penumbra Overture at the end of the summer in 2006 and it was released in February 2007 (if memory is correct), we started planning Penumbra Black Plague during the development of Overture. Due to the publisher problems we had Black Plague development stalled, but eventually picked up again and I think it was released in March 2008. Then we quite directly had a plan for Penumbra Requiem and got started on that right away and that eventually got released in August 2008.

After that we were back to publisher problems, but we managed to keep going (thanks to not putting all eggs in the same basket, we controlled Linux and Mac versions and always had a secure income from them and we had the online rights to Penumbra Overture so had some security there as well). In 2009 it looked very bad, we even had told the employees this was the last month we could manage to pay salaries.

Then there was a Steam sale of the Penumbra Collection and thanks to us having the online rights to Overture we shortly there after got the biggest single payment we had ever received before, with more coming later through the publisher and the Black Plague/Requiem sales going through them. We saw an opportunity and took it, we asked everyone to work for as little as possible and to work as fast as possible and that lead to the release of Amnesia in September 2010, under total control by us to avoid any further publisher fiddlings.

We were 3 to 4 full-time people for all the Penumbra games + the outsources who’s combined work hours would equal to about one more person.

Daev : How long did it take you to program your engine and come up with the game mechanics?

Jens : I think I covered the engine aspect in the previous answers (First engine in end of 2004, beginning of 2005. Then reworked during 2005-2006 and engine used for first proper game pretty much developed during the whole development up to the release in Feb 2007. Then from there the engine has been in an constant continued development) . The game mechanics has been a constant development and tweaking process that is continuing even today. If we look at the physics interaction it is still something we discuss, test and try to improve for each game. If we look at what we think we should occupy the player with in the games that difference heavily from game to game as we examine and rethink previous attempts and try new things. We are quite set on trying to change how story driven games are experienced, yet as everyone else, we struggle with the past of growing up with games being games.

Daev : How successful have you been?  I don’t need to know how much money your games have made but can you estimate how many games you’ve sold since you began making games?

Jens : We spent four years being very unsuccessful. Or rather we did pretty good games, at least unique games and we managed to get quite good coverage and reputation with those games. The publishers did a good job making the game available for purchase in stores as well as through digital download. But even so it was very difficult to earn enough to support even a small company like ours with very modest demands for what a monthly salary had to be.

I think these years are those that are the most important to consider if you are an aspiring developer, to keep costs low, to avoid time and resource hungry events (don’t visit shows to “make connections”, it is not worth the cost) and to think about how you can reach the potential customers with as few middle hands as possible. There are lots of unknowns and if you keep it all as simple, small and effective as possible you increase the chance of being able to follow through.

It is also important to not forget about marketing your game while you are making it, lots of lots of games are released by developers and publishers that do surprisingly little to get the word out. If you do get a publisher, don’t rely on them doing all the marketing, do your own marketing as well. By marketing I am not thinking of anything that costs anything other than time, so all ideas you can think of to spread the word.

Since the release of Amnesia we have been very successful. With the history we have had we know the fortunate situation we are in now and so have concentrated on making sure we have a financial stable company. This has meant that we can assure the employees they have solid jobs, as well as being able to do projects like the new Amnesia game, where we fund the development made in collaboration with another company.

If we add in all bundles and such were Amnesia was bought as part of a package, I think Amnesia has sold about 1.5 million copies.

Penumbra series have over time sold quite well, but we have sales we have never seen properly reported or paid for so the actual number is hard to know. But probably around 200 000 copies, not counting the humble indie bundle sales of Penumbra Overture.

Daev : A Man’s Got to Know His Limitations :  I often quote Clint Eastwood from Dirty Harry to my students and say they have to know their limitations.  They can’t come up with ideas to create MMO games or games with co-operative AI if they can’t themselves actually do that programming.  So I have them consider what they are capable of and what do they really want to show off as art students (they are not programming students).

The question is, If Clint Eastwood asked you what your Limitations are, could you answer us and you don’t have to imagine he’s holding a gun or calling you “punk”.

Jens : The art department has always been our number one limitation. It is the most resource demanding part of game development and it is not possible to compete in that field with the large companies. This limitation has led us to always try and come up with alternative ways of describing an event, which could be through sound or text instead, in an effort to build up a base for the player’s mind to kick in and do a nice job imagining how it would look like visually. It is also the cause for the physics interaction that has been more or less unique to our games through the years. We could not afford creating animations and specific models for all objects to be found in desk drawers etc, so the idea to use physics as a replacement was born from this limitation.

Daev : What made you think that you could start up a small Indie game company and compete with the likes of games that have millions to tens of million dollar budgets as well as deep marketing budgets?

Jens : This was never a driving factor for us. We simply wanted to create our own games and make a living out of it. I think it might be important to realize the effort behind it. We did not study and then got into making games and running a company. We spent a life time of interest in doing game development and running small companies and freelancing. Then as we were in our twenties we studied at the university, while at the same time continuing doing game development projects in our spare time and finally when we were around 24-26 years old we started Frictional Games. So we came in with a lot of experience and know-how, with work experience doing projects for some larger companies and even then we had four years of struggle before having anything that remotely had a base to support us as an actual company with OK, but modest, salaries.

So in short, what made us start a small game company was our long interest in doing game development, not working in the game industry. I don’t think we would have worked with games today if we had not started our own company.

Daev :  Do you have a budget for marketing or do you rely on Word of Mouth, the internet, and sheer luck?

Jens : We have not really had any budget for marketing. We have spent time doing the marketing the old fashion way, sending our PR, videos, demos and so on. Then contacting all sort of media asking for interest in previews/reviews, then keeping track of their replies (or no replies) and repeated the inquiry if needed and finally been able to secure most of them doing articles on the games. With Amnesia we also burnt simple DVDs, printed out a cover letter and sent the snail mail way to publications we could not find any online contacts to. For example  Game Informer was one of these we managed to get a review from by doing this and their very positive review I believe helped spark the interest in the beginning.

We hoped to get some sort of viral thing going, but any attempt to artificially create that does not really work, but as time passed after release more and more reddit posts and youtube clips appeared. We have tried to keep track and do fun things with them and be very open to sending review copies to anyone that asked for it.

I don’t believe in sheer luck, but I do believe in being able to create as many opportunities as possible for being in the right spot at the right time.

Daev :  Where do you see the Indie game market evolving to over the next decade?

Jens : Probably that there will not be an indie game market, rather it is simply how you do digital game distribution. If you look at smartphones, I’m not sure you think much in terms of this is an indie game and this is a publisher game, the difference in quality or type of game does not seem to be linked to a specific type of company where you as a user have to define it as indie or not. So the majority of all games will just be plain “games” and then there will be a specific label for the big budget games instead, rather than the other way around as we have today.

Making Mistakes in Artwork.

I came up with a quick idea for a game this week. I wanted to mock it up quickly and I gave myself a mandate. Finish it by end of week, or kill it by end, one way or another. I have one day left, and although overall the game is close, I always feel this need to perfect it, improve my assets, etc. I start to spiral out quickly.

I know I talk about this a lot. I have this idea that creating a game, shouldn’t always be like making a tent-pole production film that involves hundreds of people and a budge of 200 million dollars. I have no problem with companies who do that, I think that’s awesome for artists and the gamers, and pushing the state of the art.

I’m more interested in the smaller, personal projects though. When I sit down to write a short story, I’m not thinking, “This will take me about a year to create!” I’m hoping I can finish a first draft of a story in one sitting, because when I’m in a flow that’s how it comes out for me often. When I have to force things, the story or artwork shrivels up and dies.

I saw this all the time when teaching, both in myself and my students. If there was a great expectation that a zbrush sculpt, or a drawing was going to be “it” then there is this stiffening that happens, and often procrastination. It drags out, and goes no where. I saw in my students this timid dabbling, instead of broad re-working of their drawings and sculpts. The reason is often because of risk. If you push too far, you may destroy the artwork, but by being too timid, it can fail to come to life. Another reason is that some art ideas become precious to us, and we can’t part with the initial concept and see what else “it” wants to be.

To me part of the creative process involves being loose when I sit down to work. This is difficult business in creating games, because it is in fact highly technical with lots of road blocks to get in the way.

My philosophy about the games for an indie person though is to create a sort of backlog of ideas and assets and get ready for the lightning to strike. You have to be sketching in the game world with those assets you have already, and not always be “experimenting” with some killer game play idea that would actually require six months to a year for one person to execute well.

When teaching, my students would pitch games in class. The goal was to choose one as their “pre-thesis”, each semester there was at least one person who pitched this idea;

“This is an MMO (Massive Multiplayer Online) game idea, and you can customize your character from one of several races..” The idea would go on, and often involve dragons, amazing powers and weaponry, and scores of animated cut scenes. I would try to steer them back to the ground. It’s not that those things are impossible at the student level, but starting simpler (single player for instance) is still a lot to accomplish when you’re talking about actually producing that product as your thesis.

In this vein I still try to counsel ex-students of mine, who are staying on the Indie path. “Don’t get too complex” I caution. “No, don’t think of your game as a triple-A title, please.” I beg. “Be nimble. Be fast – if you build an asset, test it in game same day.”

The reason is simply this. We need to make mistakes, whether that’s in a drawing pad, or writing short stories that we later realize suck big time, or a game that is oddly reminiscent of Kong. Doing those things, even if they aren’t a masterpiece, means cutting your chops and building a repertoire of skills so that there is improvement. It means you are doing, what you want to do, even if it isn’t triple-A caliber (yet).

It also means having some closure on something. The big things, the big games, the novels that are 300 pages, the massive oil painting, those things are sweet.

I’m just advocating for the sketches in between too.

Post Production : Re-calibrating after a career in Visual Effects

grandTetonPanoFinn2

My family and I spent the last five days or so in Wyoming, at the Grand Teton National Park and Yellowstone, where there is no cell phone reception, no email, or computers, hardly a single luxury. Well, I did have my iPad and would read the pile of stories at night that I’ve been promising myself I’d make time for.

Being in Wyoming is such a timeless experience, it reminds me not just of what it means to slow down, but there are stark reminders in the environment of what global warming is doing. The glaciers are shrinking, the reservoirs which supply water to distant cities are very low. It is both breath taking and heart-wrenching knowing that our own government is doing so little to alleviate the problems of global warming.

All of this of course is a reminder of choices we make in our lives, and how we can make better choices. For me, I spent many years choosing the pace of Post Production.

homesteading

Post Production is a term in the film industry that is about the work that comes after the shooting schedule. It is the editing, the musical score, the visual effects which is an increasingly large part of tent-pole films each year.

To me though, at forty-seven, Post Production is now about what do we do when we gravitate away from the world of film production, and try to find that other pace in our life, a slower pace. It isn’t always easy. For me it also involves the choice that my wife and I have committed to that involves home schooling our children, yes very homesteading of us. I think that sometimes the place has helped us make decisions like this, rather than making them completely by ourselves. Had we stayed in Los Angeles I am sure our lives would have unfolded very differently, but here we make choices that sometimes feel driven by the choice we made to leave Hollywood behind. Doing this move mentally has been more difficult at times though.

For those who are used to production, there is a lack of patience in the pacing and unfolding of a different way of life. I know this, I live it. As I move into working on my own artwork, indie games, and writing books and children’s books, I feel the ever present yearning to see production through and get my products out quickly, much like I might in post production work. However that was a world of rapid turn-around fueled by caffeine and sugar. That was a world of seven day work weeks, long pushes in the summer months when I would barely see my family.

Now I don’t drink coffee or sugary beverages anymore. Not to say that this transition has been easy, like trying to pull myself out of Post-production mentality, it has been a hard battle fueled by my sense of self preservation and wish to be healthier as I get older. In short, I try to treat my body with better regard than I ever did when working in post production. I try to figure out this new pacing and it isn’t always easy.

Part of me still feels the pressure to stay “current” in CG technology, even though I am no longer taking on freelance work in VFX (although this is waning). I like others probably at my point in my career, are looking towards new avenues and trying to float new things, perhaps it’s furniture making, or writing, or animating short stories with macaroni noodles.

There is the ever present hope that with each small work of art, with each story that wells up, or illustration, that I’ll do something more personal. It doesn’t have to be great, I just want to do dedicate my personal time in my studio to personal projects.

The frustration for me in this stage is that the path is not as clear as it was in Post Production. In the visual effects or game industry I could apply for a job, and within some weeks I would know whether I had it or not. Now in this stage in life I find myself traveling down the path many indie artists choose over VFX, the longer play, the slower path that may take many years before the shape is clear. Take for example writing. I send out short stories, which are often months in the process before the inevitable rejection letter arrives. There is a process of approaching agents, and publishers that I am simply not used to, and that my psyche doesn’t quite understand.

When staying in the Grand Tetons we stayed at the Signal Mountain Lodge, which was a fantastic place to stay for us. Talking to the young people who worked there you could see their approach to life was so very different from the hectic city pacing of post-production work mentality. These young people were leading hikers into mountains, or working out in the open not because they would bolster their resume, but because they loved what they were doing.

The reward for them was in the doing, and in being in those incredible locations like Lake Jackson, and Yellowstone National Park, or even working at one of the lodges in the area. They are a reminder to me, that there are other choices in life that can be made and that the once seemingly indestructible field of visual effects was anything but that, it was self destructing all along in small ways if not big ones along the way. It’s so easy to get caught up in that, and I had for many years.

When in my twenties I never said no, to the demands of production as I tried to build my experience, and I wish I did. What has lead me back to my studio was exactly that, a series of saying no to production, and the demands of cubicle type environments until I have eventually found myself on the outside of that lifestyle, and happy for it.

I know, I can’t blame all this on the job demands. I have been a very demanding bossy person to myself as well over the years, often skipping vacations, or working around the clock when the demand wasn’t even there. All I can say is that I am working hard at uncovering this other life, that perhaps an alternate version of myself, in a parallel universe has been living all along. I feel like I’ve been uncovering that person I should be one small step at a time like an archeologist uncovering that alternate life. I know that it is going to take time, and that the speed of this alternate reality I’m breaking into moves at a far different pace than the post-production work I used to do. I’m hoping with some practice I can slow down and find myself moving at this pace more and more and being at ease with the slow unfolding, the non-production level of work, and the fact that every day life gets in the way, just as it did for the homesteaders who first came to Wyoming and Colorado.

Phil Fish : cyberbullied out of games?

“Maybe there is a beast… maybe it’s only us.”
― William Golding, Lord of the Flies

There are lots of reasons to love the internet, but something I hate about the internet is the Lord of the Flies like anonymous sniping that goes on.

What I hate, is the way people can wear each other out, masked behind an anonymous title. People wear their mud mask as they flog someone online, they pick them apart, make personal attacks or repeat misinformation all from behind a mask.

What people don’t realize is that this amounts to cyberbullying, it is encouraged by the anonymous nature of the internet but they are bullying real people.

I don’t claim to be an expert on cyberbullying, but I’m writing tonight after reading what happened to, Phil Fish, the indie game developer known best for his game, Fez, and for his part in the film Indie Game, The movie.

The short story is that Phil Fish worked for years creating Fez, and during that time fell into conflict with his business partner while creating the game, and finished by himself. Solo. If you’ve seen the film, you know it was quite stressful and very compelling because he was human. I don’t know how anyone can watch that and not have their heart go out to Phil. He did it though, he finished the game, and it has become a huge indie success, so much that of course, Fez II is, or I should say was, under development.

What happened this past week though is that Phil got into a heated war of words (140 characters or less) with Marcus Beer who criticized Fish.

Here’s another thing I hate about the internet; it’s too easy to blast someone in real time, instead of waiting until you run into them at the family reunion, or in the coffee shop or the next convention a year down the line. You know, in other words when you’ve had time to process your anger and simmer down and not retaliate in real time.

After the heated war of characters between Fish and Beers, Phil Fish announced that he was shutting down production on Fez II, in short saying that all the pressure and hate he receives from the game community has been too much. So to be clear, it isn’t necessarily the back and forth with Beers that has prompted him to shut down but the community at large. My article here is not even about the war between Beers and Fish, but rather the accumulation of hate posts I’ve seen that followed the heated battle.

Reading posts online I can understand Phil’s point. The number of times I’ve read people blasting him, are astounding. Understand these are people who don’t know Phil but can’t wait to blast him apart.

Now let me interject something personal here. I am not proud of everything that has ever tumbled like vomit from my own mouth in my life. Meaning I’ve said things I regret and can’t believe I’ve uttered. They’ve flown out of my mouth before that prefrontal cortex could stop them. I hope that doesn’t make me a despicable person in my ENTIRE life, when I lose my temper, or say something incredibly stupid, and I’m not at my best. I confess though, I have not been perfect and I am profoundly haunted by the things I’ve said or done at my worst times, and always hope to become a better person, a better father, a better husband, a better friend.

Unless you are like the Dalai Lama who meditates for hours every day, I believe that as humans many of us are not always at our best, and indeed we live in a culture where there is continual stress that typically centers around work.

Personally, I can’t imagine being exposed to a constant barrage of snarky comments online. The few I’ve received for videos I’ve posted on youtube have the effect of feeling like real personal attacks. I feel my pulse quicken. That’s just one snarky comment, Phil Fish is exposed to a vast number of attacks on him as a person.

In the end it feels like nothing short of cyberbullying to me, to see people lob one insult after another at Phil Fish and join in. Obviously people know that Phil Fish DOES read what people say about him (although he shouldn’t) and they are joining in, sort of Lord of the Flies ready, to stab the pig with homemade spears while they hide masked in digital mud and feathers.

The charges are that Phil is arrogant, a baby, and other things… okay, we get it. Phil has reached his tolerance level, that is not our business, take your own inventory, do your twelve steps and get out of his business. An adult needs to step in now, tell the kids to put down their spears and let Phil get back to his craft without worrying about an onslaught.

Look, it’s true, Phil Fish has had an emotional response. I’m not here to argue whether Beers or Fish said something harsh or hasty.

Having read what he wrote on Twitter I haven’t concluded that he is an evil or bad person. I’ve concluded that someone pushed his buttons and he responded when he shouldn’t have. Watching Indie Game, I already concluded that Phil is a sensitive and creative person. Did he keep it all together in the film? No, that’s part of what made him compelling but he was under pressure others in the film were not under, without the support network to help him through it. It’s that intensity that is likely responsible for his creative work as well. Creative people often are the sensitive people in our culture. They may take things harder than others who can let it roll off their back, that doesn’t make them bad or mean people, it’s part of what makes them unique individuals. Instead we live in a world where if you are hurt we hear, “Walk it off” or “Get over it”. To me these are phrases that should never be uttered to anyone and those are nice phrases compared to the things I’ve read online.

My advice to Phil Fish is to take some time. Unplug from the internet right now and in general unplug from that barrage on the internet forever. Take a break, let things simmer down.

Pull back from the general discussion online and any heated debates and make your own decisions, make your art for yourself first and please don’t remove yourself from the Indie game scene, creative individuals are needed to challenge the perception of what games are or should be.

I want to believe that there is a place for indie people, creatives like yourself to make games.

My advice to everyone else commenting on Phil Fish personally, is to put down the spears. Stop and think if you should say something online if you don’t want to say it from behind the anonymous mask you wear and consider whether the beast is really “out there”.

Can Game Engines be more Accessible?

YouTube Preview Image

A few nights ago I made a post about game engines getting in the way of individual artists because of the heavy technical side of them and I wanted to expand on some of those remarks because I could hear a collective groan from the more technical community.

First let me say that game engines have come a long way in the last ten years. When I worked on my first video game project at Rhythm & Hues Studios, we wrote our own game engine, had a small staff of programmers (small by today’s standards where even Limbo had a team of twelve programmers) and many artists creating content as well as a game testing team working continually at debugging our game.

Now fifteen years later, individual artists are creating games and getting greenlit on Steam, or selling on indie sights like Desura.

Very popular and sometimes experimental games like Dear Esther are produced by tiny teams. One of my favorite series is created by Frictional Games, three indie artists began the company working remotely from each other and have a series of games that are now considered among the most scary games on the market and have a loyal following.

http://www.frictionalgames.com/site/

The technology has become increasingly accessible to artists and small programming teams, and what one person or a small team is capable of is downright amazing.

Although these changes have happened, there is still a sizable chunk of the market which is domineered by programmers because there is a ceiling involved with most off the shelf software. I’m not saying programmers aren’t creative and can’t make games, but that there is another creative group who are less technical and are trying to break into the industry and often hit that technical ceiling. Likewise, there are some creative programmers (the team at Frictional being a good example) who may do more should easier tools for animating characters be available so they can focus on the game play, rather than getting bogged down doing something they may not enjoy, like animating.

The technical ceiling I’m talking about can be seen in two game engines that are very popular right now with Indie developers and even triple A titles. Those engines that I have used mostly, are Unity and Unreal, also known as UDK.

Now before I talk about some of the pros and cons of the two main engines that I have used over the years. I want to point people to the link above, a Ted talk with Will Wright the creative behind the Sims and Spore.

In Spore in particular we’re seeing some remarkable things that it’s easy to miss if not for realizing how hard it is to do the things he has game players doing in high end software like Maya, Unreal and Unity to name a few. If I want to design and create a character, and then animate them, it is a long process of design, sculpting, simplifying the model, then rigging and animating and exporting and programming. This is with powerhouse software behind me.

Yet Will Wright demonstrates in Spore that he can make a character and it is auto-rigged, and animated, tested and back in game play having been designed (within constraints) by the game player.

This kind of interactivity is some of what is missing from current game engines when it comes to the more difficult things, like inserting your own custom characters and giving them animations. I’ve talked about this before to people and there is always a little scoffing, but then Larry Weinberg, a former Rhythm & Hues artist is the person responsible for a similar type of software, namely Poser. The brilliance of Poser is that Larry took the complex pipeline that a visual effects artist might use, and made it simplified. Personally, I’d like to see Poser and it’s philosophy, incorporated into Unity and Unreal. In short, it’s brilliant in it’s simplistic approach to the complex. Now imagine, a combination of Will’s character creation program and Poser, where a character is added into Unity or Unreal. A walk cycle is added, and then using Poser like controls the speed, the rhythm and other controls are tweaked in real time, with a very user friendly interface – not in Maya or another animation software.

http://poser.smithmicro.com

To me this is all about pipelines in and out of software. Right now there are some things in major game engines that are not quite smoothed out, not really ready for primetime, and often badly documented at best. A good pipeline will cut down the amount of time that you do a redundant task that doesn’t really make or break a game, like for instance a walk cycle.

The point is that in games, a walk cycle is not the make or break of a game. Spending long hours rigging, and animating each character should and can be simplified and essentially automated. I know that sounds like a tall order, but I’m pretty sure this will happen eventually.

Okay, that said let me get back to the technical ceiling and some pros and cons of the two main game engines, Unity and Unreal.

UNITY

Unity has steadily gained momentum in recent years and making it’s presence well known for making video games. Part of what makes it so engaging is the intuitive and Mac like nature of the user interface. When it comes to packaging the game up, and making titles and menu buttons it is pretty simple, it’s the stuff I can teach in one class. You could compress the game into something playable and get it out to friends with less than three button clicks; Apple like ease of use.

On the other hand if you don’t know loads about programming you are likely to hit the ceiling with Unity fairly quickly and then become mired in trying to make a type of player work within the game you want to make, finding that there is conflict between different types of game play and the scripts you are now using. When you find a script you like, let’s say for instance a third person controller game, and you want to bring that character controller into your game, there will be conflict with the scripts. There are essentially different teams working on different types of game play, and these things don’t have to work together. They only have to work together should you bring them into your game project. This is a different philosophy from Unreal, where something brought into your game will not break your game should you change direction.

In Unity, you may come up with an idea for a game and realize you have no idea how to make it happen. So then it takes lots of research and trial and effort.

A great thing about Unity is the online documentation, and the community which is also easy to navigate and find information. Unique too is the in-editor store for downloading content made by others. What does that mean? Well imagine being in Maya and having a button connected to Turbosquid so you can quickly search for a model you need and download it right into your project. This has created another growing community of entrepreneurs who see a need for something, like a buoyancy script so that a player can swim through water. Someone who needs this, suddenly has it, often for a small fee.

Additionally, when building environments Unity does more for the artist than some other game engines. Getting your work into Unity happens in real-time, if make a new asset you can put it in the proper folder, and it appears in your engine, likewise for any scripting you are doing. This means you don’t have to keep exiting the software to tweak your program and that means a lot of time is saved and you spend more time in game testing your product.

The scripting languages in Unity give the user a lot of flexibility, which means that someone starting out with scripting has some choices depending on their comfort level.

Now this is a rough evaluation of Unity, overall I would say it is fun to create games in Unity, and should you sit down for a day and create something you may find at the end of the day you are knee deep in your own game creation.

UNREAL

Perhaps the most popular game engine right now is Unreal or UDK. There are a huge number of games that use this engine and it’s well deserved. The software interface isn’t as slick to look at as Unity. For me learning Unreal was a little slow going. While Unity mouse and keyboard controls matched popular software like Maya, Unreal has mapped controls their own way which is somewhat odd and unnatural to me. This made diving into the software quickly a problem because I was forced to watch videos on just navigating the software before I could explore.

While Unreal will release updates every few months for their software, they have yet to release their newest version of the software to the Indie community and this is a big downside to committing their software. Unity on the other hand, will project when the next version of their software will be available, and they try to stick to that as close as possible. In the Unreal universe there has been impatience from the indie community who are waiting for the tiniest crumb of news about when Unreal 4 will become available, and to confound the community there is no indication of when the software will be released.

This means that there is some frustration waiting for tools in Unreal to make a significant leap. Some of the leaps forward, like the newer terrain tool, is buggy and not quite ready for full use.

Additionally, the software is fragmented. If you want to make trees, you need to use speed tree. If you want to make menus, you have to use Flash and essentially jump through some very vague hoops. It is not straight forward. Publishing the game likewise is more complicated than Unity’s three buttons or less philosophy.

On the other hand getting started with Unreal may seem more difficult and indeed more frustrating in some areas, but the ceiling for what you can do without heavy programming is higher. So for instance if I want to add ladders, or a zero gravity zone, I can simply put these things in. (Please note I haven’t used Unity since 3.5 so my knowledge may be a little dated). Additionally, there is far more under the hood in terms of creating AI that works in Unreal than Unity. Creating volumes for different things, like a swimmable volume, are easy and I will say that Kismet is far more friendly to use than the Unity version of the same. This means that a user can try many things quickly in Unreal’s kismet and create many different types of games.

One of the most impressive things to me about Unreal though is the renderer. The visual quality of Unreal is just much better than Unity. Unreal has softness to it, less pixelation and the ease of using atmospherics makes for an enjoyable experience creating environments. The renderer overall reminds me of the rendering quality that admired about Rhythm & Hues proprietary software. The quality made Maya’s render look amateur, and this is true for the Unreal render vs Unity’s. Unity games have a more crisp look to them, while Unreal has a soft quality, with automatic light rays and ambient occlusion.

Now you’re wondering why I think this all can be better? Well, for starters Unreal is sitting on the next version of their software and have for some time now. The new version is supposed to revolutionize how users will interact with the software and free up artists to make whatever they want in a game. Yet no one knows when this is forthcoming. Perhaps Unity will beat them to the punch and improve some of the things that make programming unique games difficult, or improve their render quality significantly in the next version.

I appreciate the ease of use of this software, and that I don’t need to have a programming team if I simply want to get started creating an Indie game on my own, however I believe as these software packages move forward we will see more artists working individually, and small teams like Frictional popping up. The more this happens, the more we will have break out artists/programmers creating amazing and rich worlds and stories, that are NOT triple A titles, but potentially so much more enjoyable to dive into for a few hours.

The tech has definitely come a long way since I began doing this in the 80’s, no doubt about it. Yet I’m still waiting to sit down at my computer and “compose” a game like a musician might, before it becomes stale in my head and falters.