1 Introduction

In April 2002, I implemented a cloth simulator based on Baraff & Witkin's paper [BW98] for a graduate animation course taught by Michiel van de Panne at the University of British Columbia. I later released that simulator as an open-source project called Freecloth. Over the following year, I improved the performance of the simulator and fixed some major bugs.

The initial version of Freecloth had some major bugs, and did not implement all parts of the original paper. Newer versions have eliminated the bugs in the simulator, but do not yet include all parts of the original paper.

I will assume that you are familiar with Baraff & Witkin's paper, and I will not try to re-explain concepts which are clearly presented there. For my own work, I relied heavily upon a paper by Dean Macri [Mac00], who attempted to interpret and implement Baraff & Witkin's paper. I will make reference to Macri's notation and some of his formulas, but his paper is not necessary reading. I rederived all of the formulas found in Macri's paper, and verified my derivation against Macri's. Initially, I found a few minor typographical errors in his paper, but my formulas were generally the same.

As my implementation progressed, I found more major errors in Macri's paper. The largest error occurred when he calculated the derivatives of the bend condition. I give a corrected version of this equation in (54) and (57).

In this paper, I will attempt to explain obstacles that I encountered while implementing Baraff & Witkin's paper.