An interesting term!

As of last Friday, I’m now off university for a few weeks. I thought it might be neat if I make a post about what I have done these last few weeks for university, so here goes!

“Project FallingStar”
…is the single biggest thing I have been involved with this term. For the Professionalism module, we were put into groups (four, five (as it is for ours) or six people) and tasked with planning and building a 3D game from scratch whilst still learning the engine we have to use (Unity). I am pleased to say I have thoroughly enjoyed the project so far! The idea for our game is that the player builds modular space probes to send out on exploration and defence missions in the solar system. Despite initial doubts that our idea was too ambitious for a bunch of UNI students, our team (designated Team 1) is working well and our recent demo was well-received! My main contributions to the team have been physics programming (producing the gravity model) and leadership (defacto, since it was something that I naturally slipped into rather than being designated).

“A little peak” – credit to team member Luke Probert, who developed this splashscreen!

OpenGL coursework
This coursework was also fun. In the Computer Graphics module, we have been learning the basics of OpenGL and the assessment was to compile a 2D OpenGL scene that makes use of advanced OpenGL features (compared to just using immediate mode rendering) such as Vector Buffer Objects (and Vertex Array Objects), hierarchical modelling, and transformations. Whilst I have to wait for my grade, the demonstration I have to my lecturer was well-received!

Python + Pygame
This coursework was interesting ’cause I both did and did not enjoy it. The coursework was split into two tasks; building a missile command game clone with Pygame and then developing a small physics sim “Marble Madness” with a lecturer-created engine. Both tasks had their merits, which for me was mainly the fun of programming. What I did not like was that we could only develop the second part on Linux since the engine (PGE) is Linux-only. Whilst I have Linux at home nor is Linux THE problem, there is really only one computer lab in the university (where I work better at than home) that has Linux. This meant I could not always be guaranteed a computer since the lab was in high demand. I was even asked to leave for another class on two occassions, with can really be inconveniencing!

So yeah, that’s what I have been up to academically! In my spare time, I am continuing the development of Path to 2265 as another personal priority. I’ve recently made some huge underlying changes that I’ll be posting about this week!

Enjoy your day!



The PlayStation Controller Fever

Some of them may be a bit filthy right now, but they are the beginning of a collection to satisfy my current obsession.


So I have to hand it to Sony. They have developed and matured one hell of a games controller. It is my favourite line of controllers developed to date. I have used one of the latest iterations of the design, an original DualShock 4, for almost a year now and I have loved it. But after digging up an old DualShock 2, I thought that it might be interesting to use it for modern gaming and see how well it has aged. I did so, and then an obsession came…

The first thing I should explain is that I use all these on my PC rather than a PlayStation. I personally dislike console gaming, but find that a controller is optimal for some situations compared to a keyboard and mouse. So far, using the DualShock 4 has been a breeze. Using a software called DS4Windows, I simply pair the controller with my PC via Bluetooth. However, things can be trickier with the older SIXAXIS/DualShock 3 controllers without a USB cable, and all the previous wired controllers.

Actually connecting all pre-PlayStation 3 controllers is straight forward. You just need an adapter like the one below (which is similar to my one that I bought off eBay for £1.48 + free economy postage).


However, since Windows registers these controllers as a DirectInput (a legacy API that has barely been modified since DirectX 8 from 2001/2002) device, most modern games do not seemlessly support them. Modern PC gaming with controllers is built around XInput devices such as the XBOX 360 controller. So, to get these older controllers working, I use TocaEdit’s Xbox 360 Controller Emulator (link) to make them appear as XInput devices. So far, it has worked well for Battlefield 4. Other games I have not tried yet, since I’ve had little time for gaming right now (which is why I have not posted anything on this blog recently).

Now, for SIXAXIS or DualShock 3 controllers. Since my current SIXAXIS is in bad shape, I have a replacement on the way. Also, I have barely used that controller on my PC, so I can only detail the approach I’ll be taking. My plan is to use the ScpToolkit (link) by Nefarius to install a custom driver on Windows for an external Bluetooth adapter I have coming for dedicated use with SixAxis and DualShock 3 controllers.

The fleet
I currently have the six pictured controllers. I have a three more on the way right now, and I have more to get in the future before I have one of each EU-marketted controllers released by Sony.

  1. SCPH-1080: PlayStation Controller – pictured top-left
  2. SCPH-1180: PlayStation Dual Analog Controller – awaiting arrival
  3. SCPH-1200: PlayStation DualShock Controller – pictured bottom-left
  4. SCPH-110: PSone DualShock Controller – pictured top-middle
  5. SCPH-10010: PlayStation 2 DualShock 2 Controller – pictured bottom-middle, needs to be replaced with one in better condition next month
  6. CECHZC1: PlayStation 3 SIXAXIS Controller – pictured top-right, awaiting arrival of one in better condition
  7. CECHZC2: PlayStation 3 DualShock 3 Controller – awaiting arrival
  8. CUH-ZCT1: PlayStation 4 DualShock 4 Controller – pictured bottom-right
  9. CUH-ZCT2: PlayStation 4 DualShock 4 V2 Controller – to be bought next month

It’s fun to get obsessed with collecting things…