Me in front of Duomo in Florence

Egor Larionov

I am a researcher currently working at Meta Reality Labs.
I am interested in physically-based animation, geometry processing and scientific computing. More about me.



In situ measurement of friction on the human body

Pearson A. Wyder-Hodge, Egor Larionov and Dinesh K. Pai Measuring friction on the human body is challenging on areas where the surface of the skin is curved. Handheld devices for measuring friction may make it easier to rapidly measure from hard-to-reach areas, however, the orientation of the probe relative to the surface is often suboptimal to reliably measure the normal force. Here, the friction on the surfaces of a mannequin and a human body are measured and corrected using a curvature correction technique.

Constrained dynamics with frictional contact on smooth surfaces

Friction and contact pose a great challenge to efficient and accurate simulation of deformable objects for computer graphics and engineering applications. In contrast to many engineering applications, simulation software for graphics often permits larger approximation errors in favour of better predictability, controllability and efficiency. % In practice this means that methods applied in graphics can be vastly % different than methods in other domains. This dissertation explores modern methods for frictional contact resolution in computer graphics.

In situ measurement of friction on curved surfaces

Pearson A. Wyder-Hodge, Egor Larionov and Dinesh K. Pai In situ measurement of frictional properties, particularly of human skin, is challenging. A major challenge is that the measured surface may be curved and oriented arbitrarily relative to the measurement device, making it difficult to obtain accurate and reliable friction estimates. Here we propose a method to simultaneously estimate the orientation of the surface during friction measurements, using a custom-made hand-held tribometer.

Houdini Plugins

I developed the following plugins for Houdini to aid my research in soft tissue simulation. All binaries here are built from open source code available on GitHub. Installation The following instructions demonstrate how to install Houdini plugins on various platforms. Remember to replace the given Houdini version with the desired one. Linux After downloading the appropriate plugin binary, simply drop it into your ~/houdini18.5/dso folder. To make sure that Houdini sees the plugins, create a symlink to the versioned library with

Simulating deformable objects for computer animation: a numerical perspective

Uri M. Ascher, Egor Larionov, Seung Heon Sheen, and Dinesh K. Pai We examine a variety of numerical methods that arise when considering dynamical systems in the context of physics-based simulations of deformable objects. Such problems arise in various applications, including animation, robotics, control and fabrication. The goals and merits of suitable numerical algorithms for these applications are different from those of typical numerical analysis research in dynamical systems. Here the mathematical model is not fixed a priori but must be adjusted as necessary to capture the desired behaviour, with an emphasis on effectively producing lively animations of objects with complex geometries.

Volume Preserving Simulation of Soft Tissue with Skin

Seung Heon Sheen, Egor Larionov and Dinesh K. Pai Simulation of human soft tissues in contact with their environment is essential in many fields, including visual effects and apparel design. Biological tissues are nearly incompressible. However, standard methods employ compressible elasticity models and achieve incompressibility indirectly by setting Poisson’s ratio to be close to 0.5. This approach can produce results that are plausible qualitatively but inaccurate quantatively. This approach also causes numerical instabilities and locking in coarse discretizations or otherwise poses a prohibitive restriction on the size of the time step.

Frictional Contact on Smooth Elastic Solids

Egor Larionov, Ye Fan and Dinesh K. Pai Frictional contact between deformable elastic objects remains a difficult simulation problem in computer graphics. Traditionally, contact has been resolved using sophisticated collision detection schemes and methods that build on the assumption that contact happens between polygons. While polygonal surfaces are an efficient representation for solids, they lack some intrinsic properties that are important for contact resolution. Generally, polygonal surfaces are not equipped with an intrinsic inside and outside partitioning or a smooth distance field close to the surface.

About Me

I am currently a researcher at Meta Reality Labs working on physically based animation. I did my PhD on simulation problems relating to contact and friction at the University of British Columbia supervised by Dinesh K. Pai. During my Master’s, I studied fluid simulation at the the University of Waterloo supervised by Christopher Batty. In undergrad I majored in Pure Mathematics and Computer Science with a minor in Physics, also at the University of Waterloo.

The Human Touch: Measuring Contact with Real Human Soft Tissues

Dinesh K. Pai, Austin Rothwell, Pearson Wyder-Hodge, Alistair Wick, Ye Fan, Egor Larionov, Darcy Harrison, Debanga Raj Neog, and Cole Shing Simulating how the human body deforms in contact with external objects, tight clothing, or other humans is of central importance to many fields. Despite great advances in numerical methods, the material properties required to accurately simulate the body of a real human have been sorely lacking. Here we show that mechanical properties of the human body can be directly measured using a novel hand-held device.

Variational Stokes: A Unified Pressure-Viscosity Solver for Accurate Viscous Liquids

Egor Larionov*, Christopher Batty* and Robert Bridson (*Joint first authors) We propose a novel unsteady Stokes solver for coupled viscous and pressure forces in grid-based liquid animation which yields greater accuracy and visual realism than previously achieved. Modern fluid simulators treat viscosity and pressure in separate solver stages, which reduces accuracy and yields incorrect free surface behavior. Our proposed implicit variational formulation of the Stokes problem leads to a symmetric positive definite linear system that gives properly coupled forces, provides unconditional stability, and treats difficult boundary conditions naturally through simple volume weights.

2D Surface Tension Liquids

Liquid simulation has been an interest of mine for some time now. Water, maybe the most ubiquitous liquid familiar to us, exhibits many fascinating visual properties. This makes water simulation a very hot topic in the visual effects industry. In the history of liquid simulation, there hasn’t been one single efficient, clear cut method for simulating water in all its capacity. Each method has its advantages and disadvantages. In the visual effects industry, prominent methods for liquid simulation are grid-based (e.

Notes on Transient Imaging

In fall 2014, I took a seminar course in computer graphics, where we reviewed an emerging technology of capturing the propagation of light pulses. This work was sparked in recent years by the work of Velten, Raskar and Bawendi from MIT in their 2011 paper titled “Picosecond camera for time-of-flight imaging”. In response to this work, a team at the University of British Columbia (UBC) developed a much cheaper alternative (with certain limitations) to the hardware setup originally proposed by Velten et al.

Weighted Lloyd's Method for Voronoi Tesselation

This summer, I developed an algorithm to tesselate an image with Voronoi regions. I used a weighed Lloyd’s method to distribute the Voronoi regions evenly throughout the image. You can now see the method on a dedicated static page. The implementation is done entirely in JavaScript using the three.js library as well as dat.gui for exposing different parameters controlling the generated image. After seeing a series of lectures given by Craig Kaplan on computational stippling methods, in particular on Weighed Voronoi Stippling, I gained an interest in applications for Voronoi diagrams.

SPH for Weakly Compressible Fluids

In winter 2014, I took a course on physically-based simulation, and had the opportunity to work on a fluid simulator project. I finally found some time to organize my work and upload it to GitHub. The project outlines two notable methods in fluid simulation using Smoothed Particle Hydrodynamics (SPH): “Particle-Based Fluid Simulation for Interactive Applications” by M. Muller, D. Charypar and M. Gross “Weakly Compressible SPH for Free Surface Flows” by M.

Implicit Surface Method for Shape Reconstruction

A few months ago I wrote an implementation of an implicit surface method for shape reconstruction developed, in part, by H. Zhao, S. Osher, B. Merriman, and M. Kang, in their paper (2000) titled “Implicit and Non-parametric Shape Reconstruction from Unorganized Data”. This paper describes a level-set method for reconstructing a surface given a collection of points, curves and surface patches. My implementation deals with points alone and it is written entirely for MATLAB.

Experiment with 2D Particle Simulation and Artificial Neural Networks

In an effort to learn more about artificial neural networks, I implemented a simple method to learn the collision response between a pair of circular particles with a constant radius. Although not practically useful, this exercise was enlightening. The details can be found in the writeup:

Slides for Papers on Motion Tracking and Surface Reconstruction

CS 870 is a course at the University of Waterloo that briefly covers numerical PDE solutions, especially to the level set PDE developed by Stanley Osher and James A. Sethian in a paper called “Fronts propagating with curvature-dependent speed” from 1988. I presented two papers for this class (with links to slides): Implicit Shape Reconstruction Using a Level Set Method (2000) This paper presents a level-set based method to tightly wrap a 3D surface around a set of data points.

Notes on Numerical Analysis

I decided to typeset the course notes for the Numerical Analysis course (AM740/CM770/CS770) at the University of Waterloo for fall 2013 taught by Hans De Sterck. Use them at your own risk, since they may contain errors:

Undergraduate Research Seminar Talk on Information Theory

At the end of my undergraduate research semester in the summer of 2012 with IQC, I compiled a talk on classical and quantum information. I tried to start with an introduction to classical information and transition into quantum information on a very basic level. This talk should be appropriate for all audiences with a basic background in linear algebra. These notes on Classical and Quantum Information are somewhat incomplete, and will remain so, unless I give this talk again some day:

Ray Tracer Project

I implemented a ray tracer with rigid body dynamics for my final CS488 project. Unfortunately I didn’t have time to complete collision detection for all primitives, and could only demonstrate colliding spheres. Ray Tracer with Rigid Body Dynamics Table of Contents Dynamic Objects Rigid Body Collisions Texture Mapping Bump Mapping Multi-threaded Rendering Intensity Threshold Optimization Antialiasing Additional Primitives Constructive Solid Geometry Rube Goldberg machine Objective 1 & 2: Dynamic Objects Example of two spheres colliding

Notes on Continuity of Quantum Channel Capacities

I spent the summer of 2012 as an undergraduate research assistant working under Debbie Leung at the Institute for Quantum Computing. Since then I have decided to pursue a career in computer graphics, although quantum information remains one of my amateur interests. I have compiled the notes I took during this research semester into one document: There is little organization within these notes, however they summarize some of the necessary background to start the study of quantum information, and include a few proofs of theorems from various Quantum Information books, as well as a few new ideas aimed at proving the continuity of a particular quantum capacity.