Followers

Tuesday, February 21, 2012

Week 7 to Finish

Week 7 to finish was a huge bug fixing time. Touching controls, gameplay elements, and several other game breaking bugs were discovered and fixed. I went on a coding spree and buckled down to get these pesky things fixed. These really made things come together nicely and it's looking more like a game.

Friday, February 10, 2012

Week 5

This week was a big week visually as I worked on the setting. I created the buildings in the background and the skybox and lighting. This week was also a BIG integration day. We spent nearly 4 hours on Friday JUST for integrating.

Week 4

It's now week 4 and we're focusing more on the menus and HUD. I spent a lot of time trying to help Jordan get the 2D rendering over the 3D, and it ended up being something stupid like not loading a matrix into a camera.

As well I worked on integration. This is something done every week but this week was pretty difficult as everyone had something to integrate.

Week 3

This week was a little slower but I did finalize the launching of the ball and it seems like once you get the hang of the game you have pretty good control over where the ball ends up.

Week 2

Week 2 was spent getting a rough version of ball launching done. It was a bit of a challenge getting the ball to circle the crane as if it were on a string and then launch.

I also spent close to 12 hours working on a way to touch the ball on the screen and control it that way, but I didn't realize I could have used glUnproject and glProject to figure this out without all the trig work I put in.

We ended up deciding to use the whole screen for the launching, where the farther back the ball is pulled, the more velocity is put on it, and the angle of release is determined by the position it's released between half screen and the edge of the screen.

It's pretty buggy and it sometimes launches backwards. This is the chore for next week.

Sunday, January 8, 2012

New Term: Week 1

Ballistics development is back into full swing after the break. Things are going to start getting interesting, and I have spent most of the day today developing a formula to project a point on the screen onto the playing plane of the game. The point of this is so that when I get the ball projecting working, I can compare the projected point's x coordinate with the ball's x coordinate and thus will allow for good control of the ball no matter the angle the camera is on.

Throwing the ball with a circular motion is going to be a challenge and I really need it done by class this week, as well as finish up with AlphaConflict for GDC. Oh boy, it's alright though I have confidence in my abilities to come through.

Saturday, December 3, 2011

Week 6

Sot his week we worked pretty hard on damages, reading levels from an XML file, and getting the assets working properly in the renderer.

For damages we found out we could utilize an OnContactListener class to find when the ball has contacted the objects and we take the mass of the object multiply it by the velocity the ball projected it at and we get the kinetic energy transferred, at least that's the rough idea behind the physics of destruction. It also won't be hard to implement a texture swap as the object takes more and more damage and that should be ready to go for the alpha.

Reading XML files was interesting, I believe I did it a long time ago in C# but I couldn't remember ANYTHING about it. It took a while but I found a simple way of reading and parsing it and that's all I really needed. I also implemented a singleton that holds all the level information from the XML file so that it can be read by the physics handler (and then passed off to the renderer) but also the gameLoop will be able to get the number of balls left and adjust them and it'll be easier that way to tell when a level is done, and since there's only one level at a time a singleton is pretty sweet, I just made sure to include a load function that loads a new xml file into the level singleton.

Getting the assets to work properly was a HUGE pain since the axis are different in MAX than in OpenGL and so it was a lot of guess and check. Also I found out that the origin for Box2D is the center of the object. If the model wasn't put exactly there it would be rotating around a different point causing problems. In the end everything is working out to be pretty cool. Here is an example I made using the assets and the xml file:


Looking towards the future, we really need to buckle down and get gameplay taken care of. With damage out of the way, that's one significant part down, but we also need to be able to launch balls at the structures and have win/loss conditions. I think we're working at a pretty good pace though. I believe we should end up with a very polished game at the end of the 16 weeks.