This job might no longer be available.
UI Systems Rendering Software Engineer
3 years ago
Frostbite is EA’s state-of-the-art multi-platform game development engine. Our global team empowers game creators to shape the future of gaming by developing creative engine features and outstanding tools. We are honored to have thousands of game developers all over the world using Frostbite to create some of the most amazing games and player experiences in the industry.
Responsibilities:
The UI domain has unique rendering challenges and requirements that are specific to the problem-space. You will design and build cutting-edge features necessary for games to ship scalable, performant, and high-quality UI across multiple platforms and with varying hardware capacities and resolutions.
You will develop the tools, features, and pipelines necessary for game developers to build UI content, including:
- Create layouts that work on multiple platforms and aspect ratios
- Animate UI content in response to game state or user actions
- Manage and processing user input across a variety of input devices
- Bound and display game data within the UI
- Gather requirements from game team developers and write technical design specifications for implementing each new feature
- Build sample content, clear documentation, and training materials for game team UI developers
- You will report to the engineering manager and provide support to game team UI developers by addressing any bugs or issues and coordinating cooperative development of features
Qualifications:
- Bachelor’s degree or higher in Computer Science, Engineering or Software Engineering or equivalent
- Object-oriented programming experience and good understanding of OO design principles
- C++ programming skills. C# and WPF experience are nice to have
- Experience creating and optimizing UI-related render tech at the engine level in a multithreaded environment
- Familiarity with UI rendering technologies and techniques such as:
- MSDF font rendering
- SVG rasterization
- Font rendering directly from spline data
- Effective glyph cache manipulation
- Efficient Texture Aliasing
- Efficient Hierarchical Masking for UI components
- Custom shader implementations including “uber” shaders, vertex/pixel shaders, and compute shaders for optimizations
- Knowledge of batching optimizations and state-change reduction methodologies for UI
- Efficient UI <-> World rendering integrations (efficient “blur effect” behind UI elements, in-world UI)
- CPU-offloading to the GPU for UI elements (GPU skinning, tinting, clipping and culling)
- Knowledge of merge planes, color spaces, alpha blending issues (e.g. premultiply-alpha) a plus
- Knowledge of Agile/scrum processes
Create Your Profile — Game companies can contact you with their relevant job openings.