SKGenius.co.uk

Me, Myself and I

Hi, I suppose you're here trying to find out more about me! If that was your intention then you are about to achieve your goal, if not then you must have taken a wrong turn somewhere.

Well I'm a 22 year old male in Liverpool who enjoys a challenge and has been working tirelessly on university work for the last 4 years and my own personal projects for the last 7 years.
My projects range from little applications to every growing libraries; for games, communication, number crunching, entertainment and about anything else you can think of.

Pic of Me!

History

Education

School of Computing and Maths, Liverpool John Moores University

Award: Bachelor of Science with Honours (SW) 2.1
in Computer Games Technology, 2010

Final Year Modules:

  • Advanced Computer Games Technology [75%]
  • Online Games Development [65%]
  • Advanced Computer Games Programming [74%]
  • Advanced Computer Graphics [72%]
  • Project [65%]
  • Design of Algorithms [42%]

Sacred Heart Catholic College

A-Levels: Maths [D], ICT [C], Physics [D]

Work

Eutechnyx (27-07-2008 to 24-07-2009)

I worked for 12 months at Eutechnyx working in both C++ and python to develop a game for the PC, Xbox 360 and PS3. The work required a lot of investigation into an unfamiliar code base to implement missions for the game using python scripts, and to help with other game specific tasks in the C++ programming language. Towards the end of the year I worked heavily on another project that involved working with 3rd party networking libraries and implementing some new features to the game and build process, such as a crash reporting and debugging system.

The Story

It Starts

My affair with programming and making games began a long time ago when I was around 14. It started when me and friend where talking about designing a game (for a magazine competition, I could win a free game!) and he asked if it would be possible to actually make a game. I thought to myself, it can't be that difficult. So when I got home I went on the internet and search for a game maker, not surprisingly Game Maker was the top result. So I downloaded GameMaker and started making my first game. I made a total of two games with GameMaker before deciding that I wanted more control, to be able to play around with the computer more directly. So again I ventured out on the internet and searched for some kind of programming language for Windows. I found C++ and got started with some simple tutorials on the web, after fiddling around with C++ for a while I wanted to buy a book so that I could learn more. Unfortunately our local bookstore didn't have the C++ book I wanted but they did have a book on this new language that had just come out: C#

For the next 3 years I worked on various projects for myself, with no other learning aids apart from my single C# book and Google. Over that time I became very familiar with the .Net framework and I could throw together pretty much anything. It's a shame then that when I went to university I had to change over to C++. It's not all bad however because C++ gave me more fine grained control over the hardware than .Net ever could as well as access to DirectX and OpenGL so I could really start making some cool games, and with my knowledge of classes and programming with C# I was up to speed in C++ in no time. I still continued with C# at home along side the C++ at the University though, because while C++ allowed more fine grained control over everything it took an age to make tools and other useful stuff which only took me minutes with the .Net framework.

The Middle Years

When I say middle, it's not really the middle, it's more just my time at University. If there's one thing going to University didn't teach me, it was how to code. How to make a game? Perhaps, but I due to my undying thirst for knowledge I always seemed to be one step ahead. For example, the University course moves towards DirectX but the previous month I had already started working with DirectX because I wasn't particularly enjoying OpenGL and everything DirectX seemed so much more attractive. Or when the course turned to look at XNA, I'd already been all over that when looking into Silverlight and WPF. This isn't to say that the course was bad, I'd say it was pretty excellent. There's also no replacement for getting proper experience with something when you have to work in a group to produce some project. I also gained a lot of confidence in my own abilities during my time at Uni; previously I didn't have anybody to talk to about programming or have anything to really compare my skills to, and it was great being around other people who had the same passion.

I think it was also around this time that I decided I wanted a website for myself. So I made one, and not in plain old HTML either, I wanted to use Flash. So I made an entirely flash based website, which I conveniently then got to use for one of the university courseworks. If I'm honest it wasn't that great, but I did learn how to do lot's of fancy stuff in Flash and Action Script. Like communicating with a database so that people could post comments or chat. I'd love to be able to show a demo of this Flash masterpiece but unfortunately it was lost in the Mass Accidental Deletion of the My Documents folder back in '07 when I was testing some remote access pc software I was working on - I never did figure out how that happened. In case you are wondering I was able to recover almost everything that was deleted, but the flash website was not one of them. Since then I've not had the heart to make a proper website and I've never been particularly interested in web development, yet here we are now, with a brand new website that has real content and everything!

Over the last 4 years at University I have completed a lot of courseworks and in every one I've tried to add something special to it, to make it stand out. For example in one early coursework I had to produce a 2D scene with a car that had transparent windows, wheels and lights. Simple right? I of course took it one step further, I put the 2D cars into a 3D scene viewed from the front (so it looked 2D, but you got some proper perspective on the cars in the distance) I added in some lighting and a timer so that it went from day to night and at night the cars lights came on, and finally I learned all about named pipes so that the C++ 2D scene application could talk with a C# tool that you could use to add new cars into the scene (with the colour of you choice) from outside the main application. It was a little over the top and I'm pretty sure I never got any extra marks but I thought it was pretty cool. There's many more examples of the strange and wonderful things I've added to my courseworks over on the Portfolio page.

My course was a sandwich which rather than being filled with lettuce and bacon, meant that my 3rd year was spent on work placement. It was especially daunting because I didn't end up going to a company in Liverpool (where I live) but I ended up working for Eutechnyx in Gateshead, where I met many strange and wonderful people. I learned quite a bit while on placement, not necessarily directly related to programming but it was very different working on the floor with 20 other people that working in my usual group of 2-4 at Uni. Whilst on placement I also had the pleasure of being introduced to Python which I had to use heavily in my main area of development, I quite enjoy using Python for little scripts and whatnot but It's always bothered my how relaxed Python is with anything you tell it to do. For example it's perfectly valid to define a function, and then assign a variable to that function definition as though it was a class.

For the duration of my course I was slowly building up a game engine, predominantly to help with graphics and models but in my final year for my dissertation I decided to look into writing a physics engine that I could add to my game engine. I'd not thought about putting real physics into any of my games and demos before so the whole topic was almost completely new to me, of course I was familiar with the maths used in a physics engine but as it turns out I had no idea how I would actually go about implementing any of this maths to do any kind of physics simulation. After a year and a lot of research later though and I now have perhaps my greatest and most useful creation, a fully working 3D physics engine.

Right Now

Well having finished University I've had a lot more time to work on my own projects and I've been keeping myself busy. I've continued development of my game engine and upgraded the physics engine with some classes for vehicle simulation. You can see demos of before and after I added a few special joints for classes for vehicle simulation between the two projects Racer and RPM on the Portfolio page. I have also turned my focus to this website, which at this point has been rather hastily put together using PHP but I plan to move it over to ASP.Net to make it a little easier for myself to develop.

The next step for me is to find some kind of employment where I can put my skills to use and earn myself some money at the same time. So if you're reading this and you think that I can help you, then shift on over to the Contact page and get in touch!

Home | Blog | Contact | Links
Copyright © 2010-2011 Anthony Mushrow. All rights reserved.