Brandon Shihabi

Game Engine Programmer | Rendering Engineer

brandon.shihabi@gmail.com

Hi, my name is Brandon Shihabi! I'm a Software Engineer specializing in low-level programming, particularly Game Engines and Rendering. I am currently studying Computer Science and Engineering at UCLA and have professional experience working on AAA Games and Graphics tech.

This summer, I worked as the Core Rendering Intern at Insomniac Games and helped ship Marvel's Spider-Man 2. I worked on our proprietary Game Engine by optimizing performance, fixing rendering bugs, and improving graphical fidelity.

I have also developed my own personal engine projects, including a Vulkan Game Engine for Linux and a D3D12 Renderer that supports real-time ray-traced global illumination.

EXPERIENCE

Insomniac Games | Core Rendering Intern

JUN. 2023 - SEP. 2023 | Managed by Al Hastings (Chief Engine Architect/Co-Founder)

I worked on the core rendering team to help maintain and improve our proprietary Game Engine on Marvel's Spider-Man 2. I collaborated with the rest of our rendering team to deliver essential fixes and improvements to ship gold and reviewer patch. I also worked closely with other departments, such as environment and lighting, to diagnose rendering bugs those teams encountered and improve graphics.

I diagnosed bottlenecks of various rendering systems and optimized performance to reduce GPU starvation, increase wavefront occupancy, and move more work to async compute. I also worked to diagnose bugs specific to our PS5 graphics context and command buffer submission scheme and improved graphical fidelity in many different areas throughout the open world.

Rhombus Systems | Firmware Engineer

JUN. 2021 - SEP. 2022 | Managed by Drew Gallatin (Director of Engineering)

Rhombus Systems is an enterprise security camera startup focused on a cloud-based platform. They provide AI services to help monitor video streams automatically.

We often found that many of the same issues would always occur on-site when installing our cameras, mainly related to firewall issues. I led the design of a new device that would test for issues over a PoE connection and show the user what tests, if any, failed. This device ran a custom firmware I built based on Linux. I designed an in-house graphics driver to show the UI on the LCD display and ran a suite of tests to check for connectivity, MITM attacks, and more.

PROJECTS

D3D12 Renderer

FEB. 2023 - PRESENT

Athena is my personal experimental renderer that I use to explore the boundaries of graphics. It is built directly off of D3D12 and takes advantage of many of the next-generation features that the API provides. A render-graph abstraction is used to declare render passes with all resource-transitions and synchronizations handled by the graphics context. It also takes full advantage of bindless descriptors using Shader Model 6.6. The renderer uses a deferred shading model and real-time ray-tracing to implement dynamic diffuse global illumination using light probes. The demo shown is running at 60 FPS on a 3050ti laptop with <1 ms dedicated to dynamic global illumination.

Vulkan Game Engine

OCT. 2021 - OCT. 2022

Vultr is a custom 3D Game Engine I built from scratch for Linux with a Vulkan rendering backend. I designed an editor for the engine using ImGui that supports editing materials, assets, the entity hierarchy, levels, and exposed gameplay structs using my own macro-based runtime type reflection. All changes in the editor are serialized and deserialized into a YAML format on save. The engine uses my own ECS architecture and supports hot-reloading gameplay code through DLLs (including changes to component structs), optimized asset imports into a custom runtime file format, and a complete material system that works with custom shaders. The engine can render PBR graphics supporting roughness, metalness, normal, and albedo textures. The meshes, textures, shaders, and all other assets are loaded using separate thread submission queues to maximize performance. It also uses a minimal subset of the C++ STL, opting for a custom template library where possible.

BlueBubbles - iMessage on Android and Windows

APR. 2020 - DEC. 2020

BlueBubbles is an iMessage solution for Android, Linux, and Windows that allows you to send and receive Apple iMessage texts from non-Apple devices. I started this open-source project in 2020 with some other developers, and the app now has over 11,000 active users. I worked on the Android client and designed the Flutter app to communicate with our Mac server. The video playing above was created (voluntarily, we did not ask) by the YouTube channel HowToMen to showcase our app and has over 350k views.