Games Engines Assignment – Scores and Extras

Today I managed to get back into the computer labs to continue work on my PhysX assignment. The plan right now is to have about 90-100% of the implementation done before I leave for home on Thursday – when I get home I won’t be able to work on the code properly as I don’t have the right set up on my laptop. Today I implemented a scoring system now and physics feedback for when the ball hits a block. I’ve also added rotating motor joint objects on either side of the screen to enhance gameplay.

Tomorrow I hope to add in lives and an end-game mechanic. Then do some cool stuff to make the bricks explosively shatter everywhere when they’re hit. (Not sure how I’m going to implement that yet… probably with an array – but we’ll see how much time I have to do it!)

Good News Everyone!

Today I received my initial mark and feedback for the first Advanced Games Studies assignment, I got 79% which is a reasonably safe 1st. It also means I don’t have to work on sprint 2 to improve my grade, which gives me extra time on my dissertation, and I like extra time for everything!

I’ve also implemented some more stuff in my PhysX Games Engine assignment, there are now blocks that the ball destroys when it hits them, I’m pretty happy with it (The video below doesn’t show the ball reacting to the blocks, but it does now… trust me.) This coming week I hope to finish implementing some extra PhysX features like joints and convex objects in order to get a higher grade!

I’ve also hit 20,000 words in my novel, I should hopefully have a complete first draft by the end of December. I’ve had a look into getting it printed, 100 copies should cost around £300… which is steep but I can reclaim the costs if I sell the books for £5.00 each. Where I’m going to get the initial funds from I do not know, but hopefully I’ll have a job come summer to pay for it! I’ve also looked into releasing it for the Kindle, which could be a cool idea.

To quote my old history teacher Dr. Perry: “Happy days chums!”

Now for a well deserved drink in the nearby student pub!

Games Engines Assignment – PhysX Cloth Works!

I implemented the basics of my breakout trampoline idea today in our Game Engines workshop, it works reasonably well. I’ve added a ‘shoot’ mechanic which stretches the cloth into a bouncy trampoline, launching the ball into the air! I’ll probably have to make the ball bounce higher in the final version, as it doesn’t go too far right now… might have something to do with its weight or the gravity in the scene.

One thing I need to work on is the collision detection between the ball and the cloth below – even after having increased the thickness of both the cloth and the collision skins, it will occasionally fall through when the cloth is subjected to high powered forces. But this is a prototype after-all so it’ll be fine in the long run!

Game Engines Assignment – My Idea!

So I really wanted to use cloth in my Game Engines assignment. Our task is to re-create the basic idea of breakout but with interesting PhysX mechanics added into it. I’ve come up with the following idea to implement cloth into the game:

A piece of cloth is attached to two boxes by its edges like a suspended parachute. The games ball then lands in the centre and then rolls into the centre. When the player holds down the space bar, the two boxes move away from each other, making the cloth pull upwards quickly – the resultant force should propel the sphere up into the air!

The player then has to control the two boxes in order to re-capture the ball and then fire it off in different directions (depending on where it is on the piece of cloth…) in order to destroy the blocks above. Of course the cloth will be un-tearable so that the ball won’t crash through and ruin the game.

I’m going to try and implement this over the next few days depending on how much work I can get done on my dissertation project. I am not sure if the sphere will actually collide correctly with the cloth, so this will be an experiment to see if the idea is actually viable as a method of gameplay.

Today I Have Been Mostly… PhysX

I love using PhysX, OpenGL and C++ so far! Today I messed around with cloth materials in it to see what I could do… and got some really nice stuff out of it.

MyCloth* CreateCloth()
{
 NxClothDesc clothDesc;
 clothDesc.globalPose.t = NxVec3(4,7,0);
 clothDesc.thickness = 0.3;
 clothDesc.flags |= NX_CLF_COLLISION_TWOWAY | NX_CLF_VISUALIZATION | NX_CLF_TEARABLE;
 return (new MyCloth(scene, clothDesc, 8, 6.5, 0.25));
}

Over the next couple of weeks I’ll be starting work on my Games Engines assignment using PhysX: I’ve been tasked with creating physics based version of breakout, changing the game to suit a 3D environment, but keeping the basic idea of a ball breaking blocks. I have a couple of designs in mind, but I’ll leave them for another blog post once I have some sketches done!

I really want to use cloth in my game… not sure how I’ll incorporate it, but I love the way it moves and looks. Especially when NX_CLF_TEARABLE is enabled and the entire thing falls apart! The addition of wind and other forces to a cloth object are also really good-looking. Below are some screenshots from my tests earlier today:

Messing around with NxCloth Actors