Skip to content

Categories:

Year 2 – OpenGL

I’ve not posted on here for a couple of months and although this may look like one of those “oh sorry I’ve been away, I’m back” kind of posts, let me assure you that yeah, it actually is.

The reason for being is that since resuming uni and starting back in the second year, the intense workload has left me feeling like we hit the ground running without much of a respite and while this year’s material has been the most useful in terms of learning specific programming techniques, the material we’ve covered so far hasn’t been very ‘blog friendly’ unlike the project pieces I constructed in the first year.

Instead this year we’ve been covering 3 major topics; advanced physics techniques, 3D lighting calculations in OpenGL and programming in C++ (a step up from the programming in C the previous year).

Although there is nothing much to show yet for the physics side of things, I have been working on producing 3D shapes within OpenGL and C++ and then lighting the scene (we have been working on manual 3D lighting calculations but thankfully OpenGL handles a lot of this for us).

My OpenGL Clock

 

OpenGL Clock Face

Creating primitive objects within OpenGL requires a little work as 3D objects have to be defined using lists of vertices (co-ordinates) within 3D space. Using these points, OpenGL can then apply triangular polygons to make up the surface of the object; the surface direction then relies on a surface normal vector which is perpendicular to the vectors  that made up the surface. A correct surface normal allows accurate lighting calculations to be applied to the surface.

After constructing my clock face, I decided to go a step further and add some ‘fake’ shadowing to give the object a little more depth. I say fake shadowing as the shadows seen in the picture are just 2 more iterations of the objects used to generate the hands of the clock, with a darker material applied and then offset just above the surface of the face object. I’m pretty certain term 2 should introduce us to the concept of shader effects to allow for more realistic shadowing but for now my method and a few blending effects have done the trick.

Posted in News.


UDK coursework – Alice in Wonderland

With my 2D work completed, it was time to start developing games using 3D in the form of the Unreal Development Kit (or UDK). We were given a list of popular film titles and while working in pairs, we were asked to utilise them as inspiration for a complete 3D level.

Now there were many options to choose from; Zombie Land, Tomb Raider and The Lord of the Rings are a few that I can remember, but there were a few things to consider that made the level design harder that it first appeared:

The game-play had to be of your own design and could not just rely on the mechanics of the engine.

UDK has close ties to Unreal 3, which is a multiplayer bot/human combat game featuring game types such as deathmatch, Capture the Flag etc. The level we were to hand in could not be a bot filled deathmatch level or a CTF level, it had to be a completely new design.

The look and feel of the level had to match the title chosen by each team.

Now UDK is an industrial themed, post-apocalyptic combat game and the included assets reflect that. This means that to make objects in your level match the theme inspired by your design, you have to either create/find new models/textures or re-purpose the existing ones and hope no-one can tell. I’ll tell you now, there are no tea cups within UDK!

You must make either one complete level or two smaller levels

So that in mind, we decided to make two large levels >.<

Below is a game trailer style video of our completed coursework. Matt and I had actually finished this a few months ago now but it’s taken me a little bit of time to properly complete the film.

As UDK level files are huge (and we made our levels huge also), offering the game up for download isn’t really an option so hopefully this video will give you a taste of the finished product. Enjoy ^^

As you might’ve guessed from the title, we decided to opt for Alice in Wonderland theme. An excerpt of our brief reads:

Alice has fallen asleep within the maze, outside her home and as she snoozes, her thoughts and memories drift away over the hedges. When she awakes, she has no memory of who she is and must seek out the pages of her diary which now litter the strange world now surrounding her.

Credits:

Ben Candlin
Matt Preston

Posted in News.


2D MMO Game

Outside the sphere of my university work, one of my many projects I currently have in development is the building of my own MMO game.

The intention was to build a top down, 2-Dimensional point and click RPG game to support the movements of many online players using an IRC server to handle all the transactions behind the scenes. By doing it this way, each time a player enters a new section of the game world, they would actually be joining a new IRC channel. This has the added benefit of distancing players as they can now only see and interact with other players and NPCs within their ‘range of vision’.

Well, I’ve put a little bit of my theory into practice and produced a video demo showing a little bit of the system in action:

Current working elements are:
-Walk/stop animations
-Path finding/obstacle avoidance
Server Interactions:
-Handshake
-Enter Location
-Update player intended location/arrived at location

Posted in News.


Spacewar:Plutonium Project

This is one of my coursework pieces in which we were asked to create a 2-Dimensional game in one of about 4 different genres; a traditional platformer, an escape from a maze game, a kind of Tetris platformer and a top down space game much like Asteroids. As you can tell by the title, I opted for the top down space game but instead of going for a single wrap-around screen, I decided to build something with a little more scope.

Pluto.exe (windows only)

Controls:

Right mouse button fires thrusters. Be careful in running out of fuel as your ship will explode if you do..I’m not entirely sure why it has to, but it does save you floating endlessly in space.

Left Mouse button fires the plasma cannon.

Spacebar activates the shield for a short amount of time, watch your shield energy!

Moving the ship:

The ship will turn towards the target reticule at all times, which is controlled by the mouse pointer. Simply fire your thrusters and your ship will move towards the reticule.

Notes:
Ignore the load game function. Although it does work, it only works after at least one play through and wasn’t the main focus of my efforts.

Your shield energy regenerates, your hull integrity doesn’t…so make use of your shield in large swarms.

In an effort to cut down on people using the radar to avoid large groups of ships in order to pick them off one by one, I have included a class of ship that doesn’t appear on the radar..You will know them when you see them.

Please ignore the cheesy graphics while you’re at it!

Posted in News.


Welcome!

While studying for a degree in Computer Games Programming, it dawned on me that the degree on its own might not be sufficient to get me a good career off the bat…and so, welcome to my digital portfolio! Hopefully this will be a good standpoint to help show off my work and highlight my skills to any potential employer.

As I continue to study, I will post some of my course work as well as any side-projects I may undertake outside of uni.

Here’s to 2014(my graduation date!)!   2013, actually as I opted not to do a placement!

Posted in News.