Honours Programming Project

Started by
2 comments, last by LorenzoGatti 9 years, 7 months ago

I am a student studying Computer Games Technology, which aims to teach C++ with comp sci topics and apply them to developing game engines.

I am entering my fourth and final year and have to pick a topic for my honours project, which is a year long project that requires a project to implement and a dissertation report to accompany it.

I would like to see if I can gain advice from others on the ideas I have came up with:

  • Vehicle Physics Engine - modelling features of land vehicles such as acceleration, torque, braking, suspension, weight etc and allowing it to be configured depending on the type of vehicle
  • Networking - creating a networked game and artificially connecting a large number of clients to study how the traffic should be managed. (I like MMORPGs and am interested to see how thousands of players are managed)
  • Cross-platform framework - Creating a framework and game to go along with it to allow me to create cross-platform games without the need for popular middleware. I would create this using C++ and OpenGL.
  • Big Data - I know this is a buzz area in computing just now, I wonder if anyone knows if it is used in the games industry at all?I had a suggestion from a lecturer to undertake a study on a popular game engine to see what benefits are gained from using it, what features it might be lacking and building on top of it. This interests me as I can get access to the source code for UE4 and as I am comfortable with C++, it would be a challenge to try to add a plugin and submit a pull request to Epic's repo.
  • Creating a game and reporting on the design, market research, development and publishing of it? So in a year create a simple game and get it on a store at the end and talking about how the whole thing was done? I have already published a game on Android and Windows 8 where I created the game for a Microsoft sponsored Windows 8 game jam and won a few awards and got an interview posted on sites like MSDN.

I look forward to hearing people's thoughts and suggestions. Thanks in advance for any comments.

Advertisement

It kind of depends on what your goals are. Since you're getting a degree in Computer Games, I'm guessing you're wanting to enter the professional game-development industry once graduating. Of the listed options, I think "Creating a game and reporting on the design,..." is your best bet. It sounds like you've already got one game worth mentioning in your portfollio, but having two is twice as good! :)

I'm not a pro-game developer, but most of what I've read here suggests that your completed side-projects is what distinguishes you among the rest of the 100's of applicants. Plus it sounds like you already have experience with this. This could also serve as another step down the indie-game developer path.

But that's assuming your goal is "get a job in the biz". If you want a more specific job like "the physics guy" or "the networking guy", the related suggested project might be a better option.

- Eck

EckTech Games - Games and Unity Assets I'm working on
Still Flying - My GameDev journal
The Shilwulf Dynasty - Campaign notes for my Rogue Trader RPG

None of these seem to be very research oriented. They all seem like large projects that will consume a lot of time but, will provide no real academic benifit.

The thing is although your project requires development and will take a year, most of the grade will come from the final writeup. You don't want to choose a project that will require tons of programming as it is the report where all the marks will be gained.
Writing a physics engine, writing a cross platform engine and writing a game have all been done to death and won't get you a good grade.
You need to narrow your scope down to a very small area. A single algorithm, design pattern or feature. Don't waste your time writing a game. Choose an existing game and add your algorithm to that game.

For example your networking example. You shouldn't really write a networked game as all the time writing the game will do nothing for the focus of your thesis which would be on networking. In this example a good idea would be to choose an existing game and turn it into a networked game using your own protocol and network layer.

For physics you could take an existing game that does not use physics and then integrate a physics engine and come up with som interesting examples of usage. For example get the opened sourced Quake 3, integrate a physics engine, make some custom levels using the physics have fun and do a good writeup.

The "Big Data" item, which actually is the opposite (a small in-depth survey in which every single answer has been laboriously extorted), sounds like a typical software engineering research project.

Given the tendency towards secretive development and NDAs, and towards being very busy, getting good answers about middleware usage and benefits is likely to be difficult. Maybe a semi-controlled experiment where volunteers (e.g. fellow students) use a popular game engine for a specific task might be a less risky choice.

If your course has a more practical focus on "developing game engines", a good project would be focused and limited (not generically "a framework and game to go along with it to allow me to create cross-platform games without the need for popular middleware") and technically advanced (involving novel research, or at least the first practical implementation of someone else's ideas).

For example, at the "industrial" end of the spectrum, backwards compatible evolution of some existing open-source game engine to use the latest OpenGL 4.5 functions (hopefully demonstrating massive cruft reduction and performance improvements), or at the "artistic" end of the spectrum automatic management of different shadow mapping techniques (again, starting from a more basic game engine).

Omae Wa Mou Shindeiru

This topic is closed to new replies.

Advertisement