Goal:
Create a cross-platform (PC, PS5) custom engine for a Monkey Ball successor game. The engine should support path-tracing as well as custom physics and a level editor.
Time Bounds:
1 year
Team Size:
11 programmers, 3 graphics programmers, one DX12 programmer.
My Role:
Graphics Programmer
Steam Link:
My Contribution:
Binf
Stochastic PBR with GLTFs materials.
SVGF Denoising.
Ultralight UI library to graphics connection.
Wraps DX12 (with DXR), PS5 AGC (with PSR).
Co-developed with Angel Angelov.
Allows the creation of platform-agnostic rendering code.
Speeds up the graphics development process.

Uses modern wavefront approach to GPU path-tracing.
Is written fully with BEAR.
Uses NEE to separate direct and indirect illumination.
Uses Russian Roulette for the optimization.




Uses KHR extensions:
ior
unlit
emissive strength
clearcoat
specular
transmission
volume
Works with 1spp
Handles glass, diffuse, specular, and metallic materials
Uses history buffers for the accumulation.
Checks for mesh ids, normals, and world position.
Goes from a single check to a 2x2 then to a 3x3 filter to preserve history.
Uses plane-based reprojection to find the position in the world for the camera.
Codeveloped with Angel Angelov.
Based on the original paper.
Uses GLTF animations.
Supports parenting, all transform animation types and channels.
Referenced from RT Gems II chapter 20.
Used for Mip Level selection.
Calculates Mip based on texel density per triangle, cone width based on bounced distance, and takes normal and spread angle into account.
About this Portfolio
Welcome to my portfolio website! I'm Andrei Bazzaev, a game developer and graphics programmer. Check out my projects and other parts of my portfolio to see my skills and experience.
I'm currently seeking an internship, so feel free to contact me with any opportunities. Thank you for visiting!
Created with ©systeme.io