hazN

Software Engineer & Gameplay Programmer

About Me

My name is Hassan, and I am a software developer with a strong background in programming and game development. I first discovered my passion for programming in high school, where I began learning Java and became interested in building software and solving technical problems.

During my studies at Fanshawe College, I developed my programming skills through a wide variety of projects and courses covering C, C++, C#, and software development concepts. My experience in game development has given me hands-on experience with object-oriented programming, systems design, debugging, and building complex applications from the ground up.

I hold an Advanced Diploma in Computer Programmer Analyst and a Graduate Certificate in Game Development - Advanced Programming from Fanshawe College. I am now expanding my focus beyond game development and pursuing opportunities in software development, where I can apply my programming experience to building reliable, practical, and scalable software.

Outside of professional development, I continue to work on personal projects to strengthen my skills, learn new technologies, and explore different areas of software development. I enjoy taking on challenging problems and continuously finding ways to improve as a developer.

icon FileFlow

FileFlow is a full-stack file storage and management app built to practice production-style patterns. Users can upload, download, and delete files through a clean web interface, while the ASP.NET Core API handles per-user isolation, JWT authentication, and secure server-side validation.

Read more...

icon Thief Gone Rogue

Thief Gone Rogue is an ARPG, set in the bustling city of Silverstone. Players will assume the role of Darius, a skilled thief who finds himself drawn into a world of danger and intrigue as he becomes a monster hunter to combat the recent surge in monstrous activity. The game features a small, detailed map for players to explore, complete with quests and enemies to battle. Throughout the game, players will immerse themselves in the captivating story and atmosphere of Thief Gone Rogue, showcasing various systems I've created for it.

Read more...

icon JRPG Demo

I've spent my time lately working on learning the ins and outs of Unreal Engine. This demo demonstrates usage of turn based combat, UI, Pawns, Camera, Blueprints, and the Unreal animation system. Overall most of the topics were just learning how to do it differently in Unreal than Unity or my own engine.

Read more...

icon Tower Defense (Android)

I wanted to get something in for both Android and WebGL so I created a basic tower defense game. This included a total of 9 levels, with 6 towers, each having 4 upgrade paths including a custom "ultimate" upgrade for each. I created terrain specific towers so that for example you could have water on a map and place boats in it.

Read more...

icon Souls-Like Demo

I created a Third Person Controller with a heavy focus on Character, Camera and Control (3C's). I used a state machine to facilitate those and to allow a modular approach to the player actions allowing for a system that can easily be extended to add more functionality. One of the major features implemented is the climbing system, it uses raycasts to detect where the player can climb to. The climbing animator uses the offsets alongside the current position of the player to determine where to put each limb which are modified with inverse kinematics.

Read more...

icon Multiplayer FPS Demo

My goal was to learn the basics of creating a multiplayer game in Unity. I used Fish-Net for the networking and Unity Relay to facilitate the peer-to-peer connections. I also created simple first person controller, with multiple guns, shooting, reloading and animations for that. The servers use Unity Relay to setup client-side hosts with peer-to-peer connections, and Fish-Net for the netcode.

Read more...

icon Arcane Settlers

Arcane Settlers is a 3D colony simulation game created by me as my final project in the Game Development - Advanced Programming program at Fanshawe. The game was built using my own C++ engine with OpenGL, PhysX, Assimp, and ImGUI. It was an incredible learning experience and I am proud of what I was able to create in just two weeks within my own engine. Throughout the development of the game, I focused on implementing various game development concepts and techniques, such as:

Read more...

icon Third Person Controller

For this project I just wanted to get a feel for Unreal Engine so I worked on a simple 3rd Person Controller. The included movement options were sprinting, jumping, wall jumps and double jumps. I used Blueprints, as I am already confident in my C++ skills and just wanted to understand how Blueprints fit into the unreal workflow, I plan on further working on Unreal at a later point in time.

Read more...

icon Luck of the Coin

I developed a roguelite game prototype in Unity for the Roguelite Jam 5. The game features procedurally generated rooms and combat mechanics, with a twist on the jam's theme "Two Sides of the Same Coin". Each room contains a coin with two sides, representing different potential outcomes, and players need to strategically choose which rooms to enter based on the risk and reward of each side. The project showcases my skills in Unity game development, procedural generation, and gameplay mechanics design.

Read more...

icon Procedural Terrain Demo

This is a tool I worked on to get a feel for how procedural terrain generation is done. I opted for a more simple approach and just used perlin noise alongside a random seed, to offer more control, the algorithm also included the perlin stretch and a height multiplier. The terrain textures are done at runtime by comparing the height and steepness of the terrain and assigning values to the splatmap based on that, for example a sloped surface will be stone and anything at water level will be sand.

Read more...