Tejas Kumar GDD211
Sunday, May 11, 2014
Friday, May 9, 2014
Oculus Rift!
Eric dropped a bomb on me! Professor Garvey let me use the Oculus Rift with my space game, which is now titled "Dark Matters" thanks to Kevin and I. It took us almost 3 hours to brainstorm names, and when it stuck, it stuck. We expanded more on the back story for the game, and the characters, and I don't want to reveal too much at the moment (waiting for next semester). I've decided to forgo the space hub and the additional scavenger mission. Txema came up with some great character models for the game, which made the switch all that much harder:
Since the school invested in the original kickstarter, this was the first iteration of the prototype. I experienced massive amounts of motion sickness, but I was too excited to care. I was also incorrect in assuming that adapting the level to use the oculus rift would be very easy to do. The way the game is set up is that it uses multiple cameras to simulate the effect of deep space. This all proved to be a challenge. I had to disable head tracking since it messed with the flight-sim controls of the game. But without the head tracking, the motion sickness got even worse. It took 3 additional hours in the morning, and Eric had to give me a hand in the end to set up the background cameras properly, but I got it to work. This is possibly the most satisfying moment of my short career as a student of game design and development.
But we all decided that it was the right (and overwhelmingly exciting) thing to do:
Me with the Rift on. |
Txema with the Rift on. |
Additional goofy selfie. |
Wednesday, May 7, 2014
Race Level Complete, Almost There
I was able to recreate Christian's paper prototype pretty closely in Unity. Christian did a great job with the prototype, laying out the foundations of the level very clearly. He labeled each checkpoint, and varying elevations of the track. We also decided to include several large, and mobile asteroid fields for the player and enemies to navigate through.
On the bottom half of the page was the additional scavenge mission I mean to include in the game, but for that to happen I need to completely finish the race level. Here is what it looks like:
The path is pretty treacherous to follow, and I changed the enemy movement script a bit so that the AI wouldn't just smash into the dangerous asteroids.
I also decided to change the camera from third-person to first-person. I feel as if the effect of space travel was enhanced, and the game more akin to a flight-sim. I also refined the flight script some more. The only challenge now is that since the level isn't confined to a track as it would be a ground race, I didn't know how to tell the player to follow the invisible waypoints. I also didn't want to ruin the minute immersion factor by introduction directions or markers. I came up a solution that I felt worked better than a map, or a marker system, and yet allowed the player to follow unto each waypoint.
A trail render! I added a fading trail render to the parent flock controller, and this parent loosely traversed the entire track, following the waypoints. Those that played the level agreed that the trail was a great way to create a sense of direction in boundless space, without restricting the player to a "track." The trail faded as it went, so the player had to be right behind it in order to follow the track.
On the bottom half of the page was the additional scavenge mission I mean to include in the game, but for that to happen I need to completely finish the race level. Here is what it looks like:
Tuesday, May 6, 2014
3 Day Game Jam
In order to deal with some health issues, I decided to recruit a small temporary team and begin a 3-day Game Jam. Dale was previously working on a "flocking" mechanism to simulate groups of birds in flight. I felt as if that code would be perfect with the way the waypoint system. We decided to put the scripts together, in order to simultaneously work with a large number of AI with each ship possessing distinct features. Christian decided to join as a level designer, and in order to set up an actual design document. Txema agreed to make a bunch of new models to populate the hub. I didn't find it intuitive for the player to accept missions through a stale GUI. Instead, I wanted to set up a scene using a first-person-controller and have the player actually interact with NPC's, and possibly flesh out the story some more through that. Here is the initial task-list:
I ran into some issues with Dale's code because each individual entity needed to procure it's own position before it began looking for the position of surrounding ships. This presented to be a problem when the parent object was destroyed. The solution that I came up with was to create an invisible flock controller than then controlled the children ships.
Our work was pretty cut out for us, but we were all feeling exceptionally motivated, wanting to present a finished level at the game showcase on Friday. I wasn't sure if I would be physically available for the presentation, so I fully intended on passing the project onto Txema and Dale.
Dale taking a selfie, with Christian creating a paper prototype of the race level. |
Me, working hard (or hardly working) to adapt Dale's code. |
The parent was then attached to the original enemy movement script, and the player only saw the children ships flocking in formation.
I will update once again tomorrow after recreating Christian's paper prototype in Unity.
Friday, May 2, 2014
Waypoint System
I took Dale's advice, and looked into Digital Tutors. He was kind of enough to share, and I got access to some great tutorials. I finally solved the waypoint problem, through some very simple code. I used gizmos to create a waypoint system similar to the way the RAIN INDIE sets up navigation paths.
This would be as easy for a non-programmer to use as dragging and dropping the scripts onto the player and enemy. The enemy movement script is where the waypoint system comes to life:
Sample code. |
Here is what it looks like in an actual scene:
The ships follow the loop loosely, with added deviations. |
Monday, April 21, 2014
Bouncing and Hub
The art team made great progress this week and finished the space station hub. I thought of add a script to liven the space station, make the docked ships bounce. Pretty useless code, but my friends and I found it humorous.
Friday, April 18, 2014
Failed Attempt at AI
I convinced Eric to let me use the RAIN INDIE artificial intelligence package. The package is very intuitive in its use, and I thought the it be easier for others in the class to follow rather than trying to edit my code (the class is mostly made up of non-programmers). But unfortunately, navmeshes are absolutely useless in the way the space scenes are set up. Without a navmesh, the RAIN INDIE package is just as useless. Now my next attempt will be to try and create code for a waypoint system by trying to build onto my follow script. Dale is recommending that I try looking at C# programming books to attempt programming the waypoint system. In the meanwhile, Dale and I have been working on a menu/inventory GUI. Kevin helped create some mock-ups:
Unity has some great inherent abilities to set up a graphical interface, but Dale wanted to do the inventory system from scratch. Here is how it looks when implemented into the game:
GUI Options. |
The menu is initialized using 'p'. |
All four aspects of inventory. |
Sample of the code. We wanted to be able to the GUI inside of a store function. |
Subscribe to:
Posts (Atom)