Èric Canela - Physics Engine Programmer & Visual FX Lead

Hi! I’m Èric Canela, Engine and Game Programmer of The Witcher: Ties of Destiny. As Engine Programmer, during the first half of the project I’ve been involved on implementing the systems of physics from PhysX Nvidia with @Oscar Faura and improving the editor of Particle Systems. I started implementing Projected Decals, but at the end they could not be fully implemented due the time.

The other half of the project, as Game programmer I was in charge of the breakable props that can be destructed on the level and also the chests that will give some rewards to the players.

On the second half of the project, I was the VFX Team Lead in charge of creating and designing all the particles of the game, by coordinating all the VFX members, distributing and reviewing their tasks. As lead, I wanted to make sure that all the particles created by us and our Art Team were the most incredible and homogenous, making the maps and characters more alive and realistic as possible.


With my role as Engine programmer I worked on the following areas:

  • PhysX Implementation:
    - Rigid Body: Implementation of Static and Dynamic Rigid body with customizable options.(Mass, Density, Kinematic, Freeze Positions/Rotations).
    - Colliders: Static and Trigger Colliders, edit its shape. (Box,Sphere,Capsule,Mesh Collider, Convex Collider). Added a feature that it encloses all the geometry automatically with the object’s mesh.
    - Scene Queries: Sweeps and Overlaps.
    - Debug Draw: Draw all the Collider shapes.
    - Editable Simulation properties of the physics Engine.
  • Collision Filtering:
    - Layer Collision Matrix.
    - Implemented a custom filtering for all Colliders, Character Controllers and Particles.
    - Implemented scripting functions (OnTrigger and OnCollision).
  • Particles System:
    - Added a modular custom Curve Editor, that can be used for any type of subsystem.
    - Particles Animations.
  • Projected Decal: Started implementing the projected Decals.
  • Environment: Created breakable props and droppable chests.
  • VFX Team Lead: I’ve been coordinating the team while reviewing all particles. Also created multiple particles for environment and characters.
  • QA: I’ve been involved in QA sessions to identify and resolve some bugs and problems with the game.
  • Credits Scene: I was in charge of creating the credits scene.