Sam Boots

About Me

Hello visitor! I'm a programmer focusing on the C++ programming language and Engine Architecture.

View my github

Programming Skills

Programming languages and tools I have worked in:

Programming API's for game programming that I have worked with:

Platform specific code that I have worked with:

Game engine's worked with:

Project management tools, version control and more

My specialized knowledge are in these fields:

  • Programming language: C and C++17
  • Modern Graphic API's: Vulkan, DirectX12
  • Low-level memory management and it's debug tooling
  • Cross-platform engine development
  • Game tooling

Projects

Project 1
DXX-Raytracer
View repository DXX-Raytracer project Page

A year long project dedicated on raytracing the 1995 classic Descent. Developing a skillset required to maintain and extend an old codebase while working with 6 other programmers.

Skills learned and improved
  • Reading, understanding and extending old codebases
  • Extending and maintaining builds using Cmake
  • C programming language
  • Being a programmer lead
  • Pull requests submission and reviews
  • Github: Team-wide version control

Project 2
Gudenuff Engine - Setsuko
View Itch.io page

Setsuko is a 2d rythm based game made in a custom game engine made by students at BUas. My focus on the project was PS4 developement and managing a team of 14 people as the programming lead.

Skills learned and improved
  • Playstation 4 Development for game release
  • Engine Architecture development
  • C++ programming language
  • Being a programmer lead
  • Reviewing code before submission
  • Perforce: Team-wide version control

Project 3
BBFramework
View repository BBFramework project Page

A low-level SDL replacement library used in my own projects. It's a tool for my learning journey of fast performance and explicit memory management.

It's unique in that it's very explicit in how you manage memory for basic data structures. Has a lot of debugging tools to detect memory leaks and over boundry writes.

Also replaces some C libraries such as SIMD replacement for memcpy/memset operations.

Skills learned and improved
  • Low-level memory management
  • Learning and implementing different allocator strategies
  • Learning and implementing data structures such as hashmaps, slotmaps and memory pools
  • Learning how to write unit tests and debug tools for low-level code.
  • x86 Assembly SIMD operations
  • C++ programming language and it's modern features
Project 3
View repository
BBFramework - CrossRenderer

A project that is focussed on my learning of low level graphics API's, with the ability to switch between graphics API during runtime.

Uses the BBFramework for data types, memory management, cross-platform and it's other tools.

Currently still WIP, has glTF cube rendering and lighting for both API's while handling buffers and descriptors the same way.

Skills learned and improved
  • Testing to see what works & doesn't work on my custom BBFramework library
  • DirectX12 API & Vulkan Graphics API
  • Bindless Descriptor & Modern Vulkan feature usages
  • Cross-platform development
  • Cmake build tool
  • Shared Library(.dll) management
  • Engine Architecture development
  • C++ programming language
Project 3
RLEngine - Tech Dungeon

A 8 week project working on a custom game engine from scratch, a roguelike game with a immediate mode 2d/3d vulkan graphics backend.

Skills learned and improved
  • Vulkan graphics API
  • Engine Architecture development
  • C++ programming language
  • Perforce: Team-wide version control

This website was partially made with the thanks of our wonderful new technology, ChatGPT