I've decided to try and shorten the history a bit, since its a huge amount to read, and to be honest, spending a few hours writing it is a few hours I should be spending programming the game :P
For the next few weeks, we encountered some interesting problems with our code AND our graphics.
#1: Code: Ryder's issue with the Particle Universe plugin was worse than expected. Once I finally took a look at Ryder's code, it was utterly unusable (it was not even remotely Object Oriented, and it didn't even make sense).
As a result I spent an hour with him on a Friday afternoon designing a class that we could use, and simply asking him to fill it out in C++ with the Particle Universe code. The following Monday, when I caught back up with him, he'd created another behemoth that was unusable - and worse, it wouldn't even compile. I worked alongside him for a couple of hours that evening trying to figure out what was going on, until I finally realised that the plugin he had didn't come with any lib files!
So we looked at the Particle Universe project itself, and it wouldn't compile properly. In the end, I decided to write my own Particle class to use OGRE's in-built particle engine, and let Ryder try to sort out the lib stuff through the Particle Universe support. At the very least, we would have a working particle system as a fallback - it may not be pretty, but it would do the job.
later that night, I spent 2 hours and got a basic Particle class working, that we can use in our game.
#2: Code: Rob sent me some AI code. Unfortunately, when I opened it it was almost entirely blank - simply a skeleton for code. Completely useless to us. When I asked Rob what was up with that, he tyold me that he must have given me the wrong file, or lost data or something. I asked for a backup, to which he told me he'd have to me the next day.
1 day, became 2. Which became 4.
2 weeks later, I finally got an AI system from Rob. Said AI system didn't compile, nor did it comply with the code standards Amir and I had worked on earlier in the project.
In the end, I spent a weekend writing a basic AI system myself. Along with the base class which we can override to create new behaviours at will, I created a basic behaviour. The AI I created wanders around randomly until it gets within a certain distance of the player. If it gets within this distance threshold, it then charges the player, chasing him/her indefinitely.
So we now have an AI system that works, and a tired and annoyed project manager :P
#3: Graphics:
Amir took a look at the preliminary animation set we had from Andrew T. The animations themselves were quite good... but the model was... interesting to say the least.
The model itself looked pretty good - however there was an issue with its joints.
In short - the joints weren't joined. I had asked for the model to be hierarchised so that we could export pieces separately - meaning that I needed to be able to select the pieces of the model in Maya so I can export them to OGRE's format, and potentially allow for disconnection of limbs in-game. Sure, the model was selectable separately, but the model was also more a case of something like 12 models in a single scene, simply placed in theior proper places. Not connected.
The net result? When put into Ogre we get massive gaps in the shoulders, legs, ankles (assuming you could say a mech HAD ankles) etc. When I called Andrew to ask what was going on with this, he told me that that was the model he had received from Rakitha.
To be completely honest, I didn't care who had messed up, or why. The end result was that we had an unusable model. Even worse - Andrew was unable to make it to the college that day to resolve the issue. In the end, Michael, Amir and Russel devised a workaround, which Michael promptly created and sent to Andrew to implement.
However, it isn't all doom and gloom with this project...
Rakitha finished his cutscene before leaving us to deal with his internship. It looks pretty sweet. He is planning on some small tweaks to sound synching and such, but as it is its still awesome.
Michael finished his vehicles (which are looking good) and has begun on buildings. A few of the buildings are also ready, and they all look pretty sweet too.
Andrew T has gotten half of our main mech's animations ready to go (albeit it took a few tries for him to get it in the format I'd asked for, even though I told him what we needed fairly early on). By the end of next week they should be all ready to put into the engine.
Amir has been coding like an absolute maniac. Now all of our vehicles are scriptable, same with the level file itself, and possibly buildings too. The vehicles all allow for AI or player control, and we have an input system which allows a player to customise the keys if they so desire (though we haven't created the interface for the control changing just yet).
Brenden has just returned from his internship, and while he has been quite ill, he will be beginning on the terrain during the upcoming week.
Speaking of internships, Concentric went bankrupt (or something similar). Long story short is that Amir and I are now free to work solely on this project. A mixed blessing really. While I appreciate the extra time we can spend on the project (and quite frankly, absolutely NEED to spend on this thing), we now don't have nearly as much experience heading out of the college in the end. Not to mention I'm supposed to figure out what to write for the assessments since they still need to be completed :P
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment