We’re really winding down now. My level ideas from last week cannot make it into the final game. We ran plum out of time. I wish I had set some time aside from art content earlier and presented alternate level ideas.
Mark and I have been working on presenting together for our thesis defense. Our work was so interconnected that we are going back-and-forth on the different iterations and just showing concept/3D art on the same slides.
It’s been an interesting journey. A lot of work done for what ended up a rather simple game. But, I’m sure the game is a lot more fun than if we just made a giant, waterfall game.
I spent a while this week playing with a couple of level ideas. The tube is fun and all but it gets old fast.
My first ideas was a cubed level where a few ramps were the only way to/from the different faces. this allowed you to get stranded if your opponent blew up your ramp. Until the ramp tiles regenerated, anyway:
I also tested a level with two spheres. If you fell out of the first, you still had a chance in the second:
My major contribution this week was adding and tweaking the background. Rather than floating in flat, black space, I pulled from one of Mark’s concepts and made a lot of pixel streams. These streams flow around the tube and add a sense of existing in a space and orientation (I intentionally petitioned streams about 90 degrees apart at opposite tube ends).
I used two different color streams and had varying opacities on the pixels in the trexture map. I created a quick script to tile the UVs at a speed within a random range, to achieve the “stream” look of the pixel streams.
SO, this week I added a “drop glow” to help player visibility and help show that the character is jumping.
In Brain Games, there’s a good example of a basketball on a court. Without a drop shadow, it looks like the ball translates diagonally across the court. However, if you add a drop shadow, the ball looks like it flies up, then falls back down.
A drop-shadow wouldn’t support our current aesthetic but I needed something to support the fact that the player left the surface when they jumped; so I made the “drop glow”:
We found a couple bugs with the character functionalities I set up. The strangest was when you backed up. Turning the joystick slightly left rotated the turret towards the right side of the screen. Turning the joystick slightly right, however, well–it actually did the exact same thing. I don’t really know why. The rotation is *-1 for the other direction, so it ought to rotate opposite. But it doesn’t.
I did fix a problem with the orange and green not re-scintillating after highlight.
Also, the bullets didn’t always hit the tile highlighted. I worked with Skip to look into this. It may have been because we were using Unity’s collider system with the projectile. The collider was large enough that it would intersect more than one tile on the frame of impact. Unity seemed to pick the tile it thought was hit first. We tried making the projectile much smaller to counteract this. This only caused more problems because the projectile often just shot past the tiles instead of colliding. Even with “continuous” collision detection.
I also made the backface tiles transparent this week:
Honestly, didn’t really do much with our thesis this week. I went by our booth and spoke with a couple people. They seemed to enjoy the artwork and had no problem finding their opponent or seeing where they would hit before they fired.
Mostly, I spent the week helping out as a GDC Conference Associate. Then networking. Then playing. Then sleeping. No time for anything else.
There was a lot of work to finish this week to prepare our game for GDC. On my end, I basically did one thing: made the player characters look and feel right.
I spent an entire 9+ hour day just programming out all the character interactions with the environment and dependancies with the camera and player input.
I ditched the giant “V” arrow and made the targeted tile highlight white instead. With the arrow, it was almost impossible to tell which of the 9 tiles it surrounded was the tile you’d hit if you fired. With the highlight, it was much clearer.
Of course, this added it’s own issues. I had to track previous intensities so the tile reverted after the targeting highlight. And, it had to function with orange, green, and neutral tiles.
I spent the time it took, however, and the character was all ready for GDC by the end of the week!
This week, I modeled another character for our game. I didn’t waste any time on the modeling aspect. Mark delivered a new concept painting to me at about 12:50pm:
I finished the new model at about 1:10pm. 20 minutes later. It was yet another character and I didn’t want to waste any time on just modeling it. The huge “V” is supposed to go out into the world and indicate the tile you’ll hit when you shoot:
I also started tweaking the colors of our game world. Rather than follow Mark’s almost pastel theme, I went back to our original disco-demon color scheme and values. I pushed all environment elements back to a dark-blue. I kicked the team colors up to a bright, bold yellow-orange and blue-green. (With those colors instead of a centered orange and centered green, there were a couple different types of colorblindness that could still distinguish between the team colors.)
Also, on Mark’s suggestion for a little more juice, I wrote a script that attached to each tile and modulated the intensity of the main color. It made the entire playing field scintillate playfully:
I got the female, cyberpunk, mohawk girl rigged, animated and into Unity this week.
Our entire team liked the character drawn out. And the team liked the character modeled, seen from something like a 3/4 perspective. Our team did not like the character in-engine. The tubular mohawk did make the character easier to see from a distance. It also made it very difficult to tell just what the player character was.
One note I had was that everything looked very mid-value. This wasn’t strictly true, of course. The background was flat black and the player was broken up with black as well. But, the parts that had color were too close in value for the player to separate well from the background.