Alright, let's dive into my journey in the world of rendering engineering. It all started when I was working
on my final year project which was a rendering engine. Since then, it's been all about pushing the
boundaries of visual quality and performance.
During my tenure at The Forge Interactive Inc., I
had the
opportunity to work on several high-impact features.
This experience allowed me to enhance my troubleshooting and optimization skills, contributing
to the company's project and my professional growth.
Here are some of my contributions to The Forge:
-
Maintained the cross-platform framework for PlayStation, Xbox, Switch and many other platforms.
-
Upgraded software ray-traced shadows to hardware-accelerated ray-traced shadows.
-
Worked with platform-specific graphics debuggers, learning troubleshooting and optimization
techniques.
-
Worked on the internal testing of the framework, improving testability and stability.
After completing my military service, I continued to apply and expand my skills in graphics programming
focusing on real-time ray tracing
by
working on a forked version of the Hazel Engine. In this independent project, I have:
-
Developed a ray tracer utilizing the Vulkan ray tracing pipeline.
-
Integrated NVIDIA RTX Global Illumination (RTXGI) for dynamic and fast global illumination.
-
Implemented a physically based path tracer for realistic graphics.
-
Introduced Block Compression (BCn) formats with caching for efficient memory utilization.
These enhancements have further expanded the capabilities of the Hazel Engine, demonstrating my ability to
independently drive the development and improvement of complex graphics engines.
During my mandatory military service year, I worked on Tensor, a propriatary fork of the Hazel Engine
maintained
by Sensor Foundries Inc. I was able to spend a
week (holiday from military service) every 2 weeks spent
at my militray unit. Despite the constraints, I was able to make substantial
contributions to Tensor:
-
Transitioned numerous features from Hazel to the OpenGL-based Tensor.
-
Introduced Planar Reflections for enhanced reflection quality and performance.
-
Integrated Linearly Transformed Cosines (LTC) area lights for improved lighting effects.
-
Introduced Weighted Blended Order-Independent Transparency (WBOIT) to enhance transparency
rendering.
-
Utilized Atlas-Based Shadow Maps for efficient shadow mapping.
These features not only improved the visual quality and realism of the Tensor engine but also demonstrated
my ability to work effectively under challenging conditions.
As a volunteer rendering engineer for the Hazel
Engine , I contributed to the development of a powerful
3D game engine. My primary responsibilities included:
-
Implementing a forward+ renderer, allowing thousands of lights in real=time evaluation by culling
lights that are outside of the camera view.
-
Implementing advanced graphics techniques such as Ground Truth Ambient Occlusion (GTAO), Screen
Space Reflections (SSR), and Horizon-Based Ambient Occlusion (HBAO).
-
Enhancing the engine's lighting techniques to improve the realism and visual appeal of the rendered
scenes.
As a final year project student, I built my own rendering engine called Beyond.
My primary acheivements were simple and they included:
- Developed a derferred lighting renderer to enhance performance.
- Implemeted Screen-Space Ambient Occlusion (SSAO).
- Implemented Point and spot lights with soft shadows.
- Utilized OpenGL's tessellation shaders to allow for more detailed geometry with displacement maps.
- Implemented Screen-Space Reflections.