Gray Olson is a software engineer based in Stockholm with 14 years of experience specializing in Rust, graphics, and game-engine rendering. Currently at Embark Studios, he brings a unique blend of artistry and systems-level programming informed by a BFA in Fine Arts and a background as a visual artist. Gray has made significant open-source contributions to high-profile Rust projects like ggez, Amethyst, and gfx-rs—implementing efficient sprite batching, refining lighting models (including Fresnel work), and improving low-level GPU resource handling. He frequently bridges creative and technical domains, building libraries such as ultraviolet and rayn and improving usability in renderers like appleseed. Known as a bit-twiddler and gamer, he combines practical performance engineering with an artist’s eye for visual systems and tooling.
14 years of coding experience
8 years of employment as a software developer
Bachelor of Fine Arts - BFA Fine/Studio Arts General, Bachelor of Fine Arts - BFA Fine/Studio Arts General at Arizona State University
State of the art "build your own engine" kit powered by gfx-hal
Role in this project:
Backend Developer
Contributions:27 commits, 17 PRs, 1 branch in 11 months
Contributions summary:Gray primarily focused on refactoring and updating the `rendy` project to align with the 2018 edition of Rust, addressing compatibility issues and path changes. They also made adjustments to example files and updated dependencies to resolve lint issues and ensure proper functionality. Further commits included configuring the rendering system for image count, present mode choice and resource management.
Data-oriented and data-driven game engine written in Rust
Role in this project:
Back-end Developer & Graphics Engineer
Contributions:9 commits, 9 PRs, 2 pushes in 11 months
Contributions summary:Gray primarily focused on improving the Amethyst game engine's rendering capabilities. Their contributions included refactoring and optimizing the lighting model, specifically by integrating the use of the `GlobalTransform` component for point lights, simplifying transform-to-position conversions, and implementing the Fresnel function. They also fixed examples to improve the engine's usability and documentation.
data-drivengamegamedevrustentity-component
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.