Page 2 of 6

Re: Kristinka Hair Tests

Posted: 20 Mar 2010, 15:27
by druitre
Btw: I just read on the Softimage mailing list, the pixel size unit thing was changed in 2011.
What will (all of) the consequences of that change be? From this thread I understand at the moment there's a problem when rendering animations with K-hair (the hair thickness doesn't stay constant relative to world space), right? Is it a MR issue or something else?

Re: Kristinka Hair Tests

Posted: 20 Mar 2010, 15:39
by Mathaeus
It's Softimage issue, that can be fixed by adding a few nodes. Consequence is that hairs looks thinner with camera zoom and reverse, also, render region and final render can look different...

For animations, without some wild camera movements, I found the current option a bit better, to be honest. Seems to be much easier to get correct anti aliasing...

Re: Kristinka Hair Tests

Posted: 20 Mar 2010, 16:03
by druitre
Hi Mathaeus,

sorry, I don't understand your answer. Do you say that after 'adding a few nodes', the hair won't 'look thinner with camera zoom'?

And when you say 'I found the current option a bit better', do you mean not using those 'few nodes' is better than using them or do you mean the difference between 2010 and 2011?

Also, with 'camera zoom', do you mean lens angle or camera distance?

I think a better way to put my initial question would be: what is that pixel size unit issue, what's it about and what problems will be gone with the fix?

thanks, Jasper

Re: Kristinka Hair Tests

Posted: 20 Mar 2010, 18:28
by Mathaeus
druitre wrote:Hi Mathaeus,
I think a better way to put my initial question would be: what is that pixel size unit issue, what's it about and what problems will be gone with the fix?
thanks, Jasper
Actually, I would call that 'choice', more than 'issue'. Rendering a lot of thin, overlapping objects, that's always a challenge. Regardless of world or screen space, you'll have to 'do something' with, for example, thin grass which is far away from camera, that constantly 'buzzing' from frame to frame. At this stage, current, screen space, seems to be easier to control.

It's not big deal to create compound that changes strand size according to output resolution, distance to camera and camera angle, but this one can kill the playback. Also you still won't get it right in render region, unless you manually enter a some 'estimate' values.

Anyway, I'll try to create compound.

Re: Kristinka Hair Tests

Posted: 20 Mar 2010, 19:56
by Mathaeus
Hi,

I think that is the formula in ICE language. "1024" is screen resolution (I think it's horizontal resolution), "0.1" is strand thickness in SI units. Probably it's good idea to ad "clamp" node at the end, for keeping strand size in desired screen units. This one uses point position ("strand root"). For more accurate, but slower calculation, strand position may be used instead.

Cheers

screen shot of ICE tree

Re: Kristinka Hair Tests

Posted: 21 Mar 2010, 11:19
by Ahmidou
Actually, the pixel size unit limitation was not changed in 2011 but you'll now have the choice between screen space and world space size.

Hey Mathaeus I found some lecture for you :D
http://www.disneyanimation.com/library/ ... umHair.pdf

Re: Kristinka Hair Tests

Posted: 21 Mar 2010, 12:47
by Mathaeus
Thank you for link, even I already have a whole bag of these :) I got them from my fellows, game programmers... At this time, I have no plans for simulation improvements - all work is still focused on styling, including styling in ICE post-simulation.

Re: Kristinka Hair Tests

Posted: 03 Apr 2010, 23:23
by Mathaeus
Hi all

here are a few new ones. Styling is the same as in 'Follow-NURBS-Offset-Curves' demo in the lastest release, but with a bit different layout of NURBS surfaces.

Actually images are rendering tests, how MR is handling with all that, rendered in one go. It's rasterizer with final gathering, also raytraced reflections at some places. Finally I was able to get these renderings finished, only by playing with 'max depth' parameter in rasterizer's settings - it's a some kind of 'trace level' for rasterizer, that can dramatically speed-up the rendering, but also leaves the areas with black alpha.

Image

Here is screenshot of ICE trees. - a big one.


Cheers

Re: Kristinka Hair Tests

Posted: 03 Apr 2010, 23:25
by Mathaeus
... and another one

Image

Re: Kristinka Hair Tests

Posted: 09 Apr 2010, 10:45
by Rork
Impressive work, as always :-bd ^:)^ ^:)^

Re: Kristinka Hair Tests

Posted: 25 Apr 2010, 18:05
by rray
Well done, Anto!

Sorry everyone for the lack of updates (and the tutorial) . . Need to get back on track.

Here's a scene file for the last picture I posted (SI '11 format)

Btw: Did anyone notice improved render times when using ray tracing with strand hair in SI 2011? By some first tests, it seems to be faster than rasterizer now compared to SI 2010. Might be some glitch in my setup also.

Btw Anto, AbsoluteShapeWidth seems to change the look of the render also, I can't get it to look the same as when rendering with Pixel Units. It looks a bit more like wires than hair.
IMG_H1.jpg
Test: two pointclouds with diff. hairstyles merged
IMG_H1.jpg (85.42 KiB) Viewed 3518 times

Re: Kristinka Hair Tests

Posted: 08 May 2010, 22:20
by Mathaeus
Hi,

here is a small experiment with final gathering and ICE strands. For ICE strands, I think it's good idea to always use 'Long Hair' diffuse model in Hair Renderer -
not only because long hair is modeled. Even with short hair, info about normals from emitter's surface doesn't exist (at least I think so). Also, Kristinka Hair nodes does not respect old fashion hair shading rule of 'first segment parallel to emitter's normal'.

So, 'Long hair' diffuse model calculates shading normals relative to direction to lights - but in case of final gathering, what normals are used ? I'm still not sure, to be honest. For this experiment, I've used only one light with very low intensity, didn't noticed any influence of this one to FG shading.

Fortunately, we can provide a custom shading normals to Hair Renderer. Custom vector is used as an input for 'normal' in Bump Generator node, as well 'Relative to Input Normal' option with node. 'Bump Factor' is set to zero, as we already can't use bitmap, there is no 2d mapping with hairs, only normals are important here. To get it work, 'Normal Blend' in Hair Renderer need to be at more than zero.

Now, examples. Two at bottom are Eye Ray Vector - normal are looking at camera, or inverse. Second one looks most promising to me, it's custom attribute already created by kH Follow NURBS styling modifier - this is in fact, surface normal of NURBS surface used for styling, sampled for each strand segment of hair guides, then transferred to rendered strands/hairs. This is fast setup, of course it's possible to create a more fancy solution, with complex setups.

Cheers

Image

Re: Kristinka Hair Tests

Posted: 09 May 2010, 01:44
by rray
Interesting, it never occured to me that this is even a problem before xD

Wouldn't the best normals for fg be:
(walking along the width of a strand) ...
cross product of inverse eye ray and strand segment's direction vector----> inverse eye ray ---> inverse of the cross product

Maybe this could be simulated ...
Beause fg samples a hemisphere this would result in a total 360 degree sampling (with prevalence towards inv. eye)

I tried to test this by merging the last two of yuor pictures in photoshop (inverse eye ray normal at 66% blend mix, eye ray normal at 33%)

Hm ah well... no idea if this looks any more realstic, probably some more renders and teting required ~o)
hairblend.jpg
hairblend.jpg (63.04 KiB) Viewed 3467 times

Re: Kristinka Hair Tests

Posted: 11 May 2010, 00:32
by izze
Could I ask where to find AbsoluteWidth and Pixel Unit settings? I am having difficulty finding more information regarding this option.

Re: Kristinka Hair Tests

Posted: 12 May 2010, 22:42
by rray
There's no setting, you'll need create a set data node and set shapeSizeAbsolute true for each particle

Re: Kristinka Hair Tests

Posted: 13 May 2010, 00:57
by izze
Thanks for getting back to me on that.

I just spent the last 48 hours trying to pin down a problem I am having. I am getting crashing during render time in 2011. I think I have it narrowed down to a combination Kristinka, SSS, and Final Gather.

I can have SSS and Kristinka in the scene without problems, but once I turn on FG my renders lock up or crashes XSI. Also, I can have Kristinka and FG, but once I introduce SSS to the scene, I get the same problems. I have tried this on several machines in our office. For testing purposes I am using the built in fast sss material.

This is only in 2011, so I apologize if Kristinka is not ready for 2011, or if I have missed information indicating this issue. (or otherwise just messing things up myself) :)