About me
Hi, I'm Daniel Whilock, a programmer and recent First-Class Game Programming graduate from Staffordshire University!
I'm passionate about software development and enjoy tackling technical problems across areas including AI, networking, optimisation and gameplay systems. Games have been a major focus of my work, through university projects, game jams and personal projects, but I'm also interested in entry-level software engineering and programming roles outside the games industry.
I primarily work with C++ and C#, with experience using Unity, Unreal Engine and SDL2. I've worked both independently and as part of development teams, and I'm always looking for opportunities to improve my skills and learn new technologies.
Take a look at my projects below to see some of what I've worked on.
Outside programming, I enjoy hiking and exploring new places, watching films and shows, and, unsurprisingly, playing games!

Projects
DDA shooter
Tags:
A dynamic difficulty made action game for my final year project
3D, University Project, Unity, Code Snippets
Static difficulty systems in action games can fail to accommodate against a wide range of players skill levels. Leading to either experiences too easy, or experiences too hard. For example, in the standard difficulty selection, easy could be too easy, but normal could be too hard.
This project aimed to explore dynamic difficulty systems could create a more balanced and engaging experience when compared to static.
This game is an action game prototype made in unity, developed with both a static difficulty game(Type 1) and a DDA game(Type 2). Both systems have 3 phases, indicating easy, normal and hard, or in DDA systems case, relaxed, tense and stressful. Testers played both versions and provided feedback.
Worked on:
- Director system
- Reactive Behaviour Tree System
- AI
Assets:
- City fire creative commons music
- Unity asset particle materials from JMO
Veiled King
Tags:
Dungeon Crawler collaborative project
Unreal, University Project, 3D, Code Snippets
This project was group project in unreal, collaborating with a group of teams of designers, programmers and artists to create this game. I mainly worked on the AI of the game, focusing on the different types of enemy behaviors using the behavior trees, setting up model and animations given, the final boss. Also worked on sword combat system, making it as easily as possible to create combos, with timings and particle effects. Though the animations for the slashes were unfortunately not created.
Working closely with the tech lead and team members to develop features that work with their vision of the game, and communicating when I needed more clarification, feature plans and build the systems needed.
Worked on:
- Sword System using easily customizable combos with Data Assets
- Enemies and the boss
- Behavior trees
- Destructible objects
Low Level Optimization
Tags:
A highly optimized program handling thousands of physics objects
C++, University Project, 3D, Code Snippets
Optimisation and debugging are very important in programming, and that’s why it’s important to develop and implement different techniques in order to achieve it. This project, an experiment in testing different performance techniques, memory management techniques and integrity checking. Spatial partitioning which separates colliders into grids, Memory tracking of those colliders, pooling the memory at the start and threading to improve performance.
Worked on:
- Broad Phase Spatial Partitioning
- Memory Management, such as memory trackers, memory pool and heap walks
- Use of operator functions of new, memory user with malloc with a doubly linked list.


