Work side by side with designers, animators and producers to realize complex and realistic animal behavior. Take part in designing and implementing their senses and needs using and extending existing tools as well as implementing game systems related to pathfinding, decision making, group movement and locomotion. This role will require you to take high level design ideas and translate them into practical solutions. You will join the team of engineers in developing and maintaining our proprietary Apex Engine.
It is expected that you see your responsibility as delivering a successful end-user experience, together with your team-mates, rather than just handing off technological solutions to content creators. Much of the success of well executed player characters is down to how successfully they are integrated with all of the systems within the game engine, e.g. physics, animation, camera, control scheme, UI, SFX, VFX, dialog, etc. Previous experience and proven ability to work with multiple systems and stakeholders is a definite advantage. Finally, as with any other programming role, you will have to be able to balance functional requirements with technical requirements in the areas of performance, stability, memory usage, interoperability.
- A good understanding of what makes a great playable character experience
- A passion for creating fun gameplay
- Experience with modern animation techniques including layers, additive animations, state machines, blending techniques, IK, facial animation, etc.
- Experience with character control and locomotion systems.
- Able to write readable, robust and performant code in C++
- Prior experience working as a programmer on at least one shipped title on current-gen consoles from start to finish
- Experience of ranged and melee combat systems
- Experience creating control schemes on gamepad controllers
- Experience working with game physics
- Experience of collision detection and spatial querying
- Experience of profiling and optimization
- Knowledge of asset pipelines for animation content, such as data representation, compression / processing, aggregation, meta data tagging, etc.