Thanks Ben. That is some good info. I was thinking more along  implementing the 
Harmonic Coordinates approach. I think Pixar had some papers on it. 

Sent from my iPhone

> On Dec 11, 2013, at 10:50 PM, Ben Houston <[email protected]> wrote:
> 
> My knowledge is out of date, but off the top of my head....
> 
> Cage deformers are often written using a cubic interpolant rather than affine 
> ones.  If you use a grid cage you can use Bezier Volumes, which are just a 
> generalization of https://en.wikipedia.org/wiki/B%C3%A9zier_surface.  If you 
> are using a regular grid, you can just take 3D coordinates relative to each 
> grid.  If you use a tetrahedral mesh, you can use generalization of the Cubic 
> Triangle for deformation: https://en.wikipedia.org/wiki/B%C3%A9zier_triangle 
> and then you need to use barycentric coordinates to get a relative spatial 
> relationship.
> 
> So I think yes, barycentric coordinates within a space filling discretization 
> of space, either a grid or a tetrahedralization with a cubic interpolate as 
> you start to deform them.
> 
> I implemented the grid-based deformation with cubic volumes and got this 
> result:
> 
> http://www.exocortex.org/ben_software/hd-ffd.zip
> 
> I have also implemented the tetrahedral-based discretization with Christopher 
> Batty to deform a high resolution object to follow the path of a low 
> resolution object to really good success.  The only issue is that tetrahedral 
> meshes suck to create and maintain efficiently.  It is the bunny getting 
> crushed in the gears at the end of this video -- the actual simulation bunny 
> was super low res, but we uprezed it for rendering: http://vimeo.com/874168
> 
> Best regards,
> -ben
> 
> 
> 
>> On Wed, Dec 11, 2013 at 5:09 PM, Alok Gandhi <[email protected]> 
>> wrote:
>> Hi All,
>> 
>> Very soon, I am starting on my own generic custom cage deformer. A mix of 
>> C++/Cython/Python.
>> 
>> I am thinking of implementing fast calculations on barycentric coordinates 
>> with affine transformations. I have some good papers (in my treasure trove 
>> but haven't checked it yet).
>> 
>> Anyone suggest a different approach other than barycentring coordinates.
>> 
>> The reason I will be writing this is for (proof of concept / prototype for 
>> now) is to be able to get point cache data from a low res geometry and then 
>> use this outside of an DCC to convert to high res deformations.
>> 
>> This ways existing animation pipelines which have to rely on switching to 
>> higher resolutions before caching out do not have to do so. Simply export 
>> out point caches (alembic, pc2, mdd, bgeo, icecache etc.) and then apply 
>> this to a high res point data outside of any DCC as post process, even on 
>> farms from command line for example.
>> 
>> -- 
>> 
> 
> 
> 
> -- 
> Best regards,
> Ben Houston
> Voice: 613-762-4113 Skype: ben.exocortex Twitter: @exocortexcom
> http://Clara.io - Professional-Grade WebGL-based 3D Content Creation

Reply via email to