Easiest way to smooth a strand is to do the following for each strand point:

p(n) = A x p(n) + (1-A) x 1/2 x ( p(n-1) + p(n+1) )

Where:
p(n) = Current strand point position
p(n-1) = Previous strand point position
p(n+1) = Next strand point position
A = Smoothing factor (from 0 to 1)

For best effect, do this for a number of iterations keeping A as small as you 
can.

You can get better results averaging over more neighbouring points in the 
strand and weighting them using an appropriate filter (Gaussian, etc.)

A


> On 2 Jan 2015, at 14:27, Olivier Colchen <[email protected]> wrote:
> 
> Hello,
> 
> To be honest, I think you're both right : it's probably not worth the time, 
> especially considering I don't even have a month to setup everything properly 
> in each scene and then render it. And only a handful of frames would actually 
> benefit from that. I barely tried the dynamic framework solution, as, as you 
> mention Stefan, it seems to only really work on fixed-length strands, as well 
> as setting up some flex/stretch I don't really want. And devling deeper into 
> the system looked time-consuming.
> 
> 
> However I believe I was quite near the result I wanted, going back to the 
> simple Closest Location to strandposition compound. Maybe I could find the 
> middle solution and smooth the strands whenever they leave the volume to fix 
> the little dents appearing here and there. I have no idea how to smooth a 
> strand, though...
> 
> Olivier
> 
> 2015-01-02 15:14 GMT+01:00 [email protected] <[email protected]>:
>> 
>> 
>> > On 2 Jan 2015, at 12:39, Stefan Kubicek <[email protected]
>> > <mailto:[email protected]> > wrote:
>> >
>> >
>> >     PS: If the runners trails are meant as a graphical element rather than 
>> > an
>> > actual physical element in your picture I doubt I will look nice when it
>> > collides with the runner.
>> >
>> 
>> 
>> 
>> Agreed. I doubt it would give you a look that you want and probably isn’t 
>> worth
>> spending too much time trying to make a robust system to make it work. Do a 
>> few
>> quick tests first to see if it’s going to take you in the right direction.
>> 
>> As a quick alternative, why not try setting the StrandColor to black for any
>> strand points that fall inside your collision geometry, and then incorporate
>> that as a multiply operation into your shader? That'll hide any parts of the
>> strand that go inside your character.
>> 
>> A
>> 
>> 
>> 
>> On 02 January 2015 at 12:39 Stefan Kubicek <[email protected]> wrote:
>> 
>> 
>> > Hi Olivier,
>> >
>> >  I think there are example scenes for strand collision that ship with XSI. 
>> > No
>> > friction between strands and geo is modeled as far as I can remember, but 
>> > it
>> > might get you started.
>> >
>> >  Then there is also the strand collision framework for more accurate
>> > collisions, but I don't know how it reacts to changing point counts and 
>> > strand
>> > length: http://softimage.tv/strand-collision-framework/
>> >
>> >  PS: If the runners trails are meant as a graphical element rather than an
>> > actual physical element in your picture I doubt I will look nice when it
>> > collides with the runner. Maybe you could solve this in comp and get around
>> > explaining collisions entirely?
>> >  Here is a nice example in a recent Glassworks spot that might be similar 
>> > to
>> > what you to try to achieve:
>> >  http://softimage.tv/lycra-moves-you/
>> >
>> >  Good luck,
>> >
>> >     Stefan
>> >
>> >
>> >
>> >
>> >   > > Hello, long time reader, first time poster here!
>> > >
>> > >
>> > >   So I have a bit of a problem on my hands.
>> > >
>> > >
>> > >   We are doing a very simple concept, a sportsman whose back is leaving
>> > > strand trails as he goes. This is child's play so far.
>> > >   My issue is that we would like the trails to interact with the mesh 
>> > > when,
>> > > for various reasons, he cuts through them again.
>> > >   IE : at some point he falls to the ground and stands back up. The 
>> > > unwanted
>> > > behaviour is that the strands generated from the back of his head will
>> > > simply go through his head as he rises up, resulting in a somehow 
>> > > vertical
>> > > strands column masking his face and fore-body. The desired behaviour is 
>> > > that
>> > > the strands will flow around his cranium, maybe along his back, 
>> > > effectively
>> > > leaving at least his face apparent.
>> > >
>> > >
>> > >   Animation is done in Maya and transfered over via geocache.
>> > >
>> > >   I tried to operate with tools like 'closest location' or 'get location 
>> > > by
>> > > raycast' applied to the strandpositions when inside the volume to 
>> > > simulate
>> > > collision, but these were all lacking. The raycast solution may be
>> > > promising, but I don't know how to set the correct direction vector. And
>> > > sometimes the animation I'm working with may "skip" a strandposition,
>> > > effectively not triggering the 'inside volume' condition.
>> > >
>> > >
>> > >   So yeah basically I don't know how to do that in a visually pleasing 
>> > > way.
>> > >   If anyone had some pointers, I'd be very grateful !
>> > >
>> > >   Thanks,
>> > >   Olivier
>> > >
>> > >
>> > >
>> > >  >
>> >
>> >  --
>> >
>> >  -----------------------------------------------------
>> >     Stefan Kubicek <a href="mailto:"[email protected]";
>> > <[email protected]>">[email protected]
>> >  -----------------------------------------------------
>> >            Alfred Feierfeilstraße 3
>> >      A-2380 Perchtoldsdorf bei Wien
>> >       Phone: +43 (0) 699 12614231
>> >                 www.keyvis.at <http://www.keyvis.at>
>> >   This email and its attachments are
>> >  confidential and for the recipient only
>> >
>> >
>> >
> 

Reply via email to