Tyro Engine

PS5 SDK
PSSL
PBR

As part of my AGCT module at Sheffield Hallam, I developed a physically based rendering engine as a solo project, written in modern C++20. Having built an engine before, I saw this as a chance to focus less on structure and more on depth—specifically, implementing a full PBR pipeline from the ground up.

What made this project particularly exciting was the use of PlayStation 5's proprietary APIs, giving me the opportunity to work closer to the kind of tooling used in real-world AAA development.

The engine includes a range of core systems and features:
  • A resource manager for textures and model data.
  • Data-driven manifest system for asset registration within the engine pipeline.
  • JSON-based scene serialization and deserialization.
  • Physically based rendering pipeline modeled after Unreal Engine’s PBR setup, fully driven by material properties.
  • Custom logging system, built from scratch.
  • Type-safe runtime settings manager, built with templates and static_assert checks, with support for .ini file serialization.
  • Complete deferred shading pipeline.
  • Support for directional lighting.







About me
I’m a C/C++ developer with a strong focus on graphics programming, low-level engine work, and optimization. I enjoy working close to the hardware, whether it’s refining rendering pipelines, improving performance, or just figuring out how to make things run better. Lately, I’ve been exploring the PS5, getting a feel for what modern consoles bring to the table.

What drives me is building systems that let others create without limitations, whether that’s artists bringing their vision to life or developers pushing their projects further. I like clean, efficient code, and I’m always looking for ways to make things more seamless, more performant, and more intuitive.


juansalvadoraviles@gmail.com