I’ve been busy working away at My Childhood on the RS Anthony. It’s coming together rather slowly, mostly because of other obligations getting in the way, but that is just excuses. I want to make this process open and transparent, so I really want to give a long overdue post about what I’ve been doing. At the bottom of this post, I’ve put a lot of images that I’ve taken while I’ve been working. In this post, I’m going to first talk about what I’ve been working on, then about some changes I’ve made to the design, and finally what I’m going to be working on next.
So first, what I’ve been working on. For the most part, I’ve been largely working on game space creation. So in the images below, you will see that I’ve started building spaces for the game. A lot of this work is making walls, ceilings and floors, and placing models. I’ve decided to grab some simple, freely available models from the web to populate the game. This began as a realization that I needed some plants for the game, and I didn’t want to spend the time making nice plants. There are fortunately many readily available free plant models. As a result, I’ve made a nice hydroponics/gardens area. For people who are interested, all my models were found on the pages mentioned on this page.
While looking for plant models, I also found some nice furniture and other objects that I’m using. Some of what I found isn’t being used for the original intended purpose. As an example, the lights for the game space are being made out of a hanging shelf. All of my walls and doors, however, are only made out of quads and are fairly simple objects.
Things I discovered:
The default diffuse shader for Unity will become unlit if you turn off culling in the shader code. That’s a bit technical, so if you’re not into shader programming (I barely understand it), then don’t worry about it. As a result, many of my interior walls, which I wanted to always be visible, have a front and back object. The station walls don’t have this, since I want players to always be able to see through it from behind. My reason for this is to avoid issues with a third person camera constantly being trapped behind a wall. Interior walls, though, have to be visible to divide space in a meaningful way.
Placing plants is very tedious. They also have a lot of polygons. This slows down the process and makes the program churn a little bit on the higher qualities. My suggestion would be to make it so that you populate places with lots of plants as late as possible in the placement phase, or at least put the plants in place as the last thing you do, except of course for anything that relies on the placement of those plants.
Some other things I’ve done, which won’t be readily apparent, are on the code side of things. First of all, I have most of the camera code in place. I wrote most of it on my own, but some of the rotation math I followed from the packaged Unity character controller. Currently it’s sitting in another project which I had used to test out the camera and controller support (which also is working). I’ve also created a text box that pops up when the player gets nearby. It’s a 3d space text box, and right now it just pops up over the top of whatever is presenting the box. Eventually, the box will rotate to face the player. That’s math, but it’s a common thing that many people have done before, and I can find solutions for doing it on the web in no time, which might save me some time instead of figuring it out myself. Since my 3d math skills are somewhat poor, this might save me a lot of time and stress.
Now, I’ll discuss some changes that I’ve made to the design. The first change is in my possibility space. I haven’t been very happy about my idea for the blockades and the jumping/shrinking to combat it. I couldn’t figure out how it was supposed to look like, and the added complication of needing vents really would add a lot of work on me to make those vents and make them make sense in the space. So I’ve eliminated the ability and the obstacle. This brings my possibility space down to 8 combinations. This makes my workload much easier for something due to be presentable in two weeks. As a result, I no longer need 15 spaces for the game, and so I can eliminate some spaces. You can see in the following diagram that I’ve done so.
So, now there’s not a Bio Lab, and I removed Engineering (or more specifically, I merged Engineering with the Computer Lab). I decided that we didn’t need so many lab spaces and the Bio Lab was really redundant with having Hydroponics and a Med Bay. Engineering was an unusual space that made better sense when I had blockades in place (which I was envisioning as connected to Engineering). Since the blockades aren’t there, then I don’t think we need the extra room. This just means that I’ll have some work tables in the computer lab.
A minor change is how the player talks to other characters. Instead of approaching the other characters and pushing a button, whenever the player approaches a character, the character’s dialogue just appears overhead, facing the player.
Now for what I’m going to be up to over the next two weeks. I’ve really got to get the obstacles up and running, and make them actually do something. Cameras need to block off spaces, patrolling people need to capture the player and take them back to a designated area, doors need keypads, and people need a mind to read. In general, doors need to work in general. This would probably normally be done in an animation, but I don’t want to think about animation at this point, so it will probably just slide out of the way.
Obviously, more spaces need to be filled out. They’re going pretty quickly now. There should also be some sort of interface that I need, particularly for character creation, ability selection, and indication of what ability is currently active. A game structure should also be put in place. Finally, the abilities need to be actually coded. That’s the bare bones of what needs to happen before the game gets presented.
Finally, I will leave you with some development pictures.