evenflcw
09-29-2008, 08:25 AM
If you have a 1x1m plane and a 2x2m plane, both with fiber Density set to 10%, they will be given the same amount of fibers, 1000! The 2x2m plane however covers an area that is 4 times as large! With the same amount of fibers on both, the actual density is much lower on the larger plane. Furthermore, with scale set to 100% on both planes, the fibers on the 2x2m plane will actually be about 4 times as long compared to the fibers on the 1x1m plane.
Not considering the misuse of the term "density", this is not a good implementation! It makes creating and using presets very inconvenient:
Consider that a artist on one project has to cover a landscape with grass. He uses FiberFX and manages to get it just right! The grass has the perfect height, the perfect density. It's looks nice and lush! The project is a success! Then comes along another project where a landscape needs to be covered with grass. The artist naturally loads the setting from the previous project. It looked so good last it should look just as good this time. But it doesn't! The grass is short and stubby! Not at all as lush as last time. What happened!? Did the saved settings get corrupted? No, the reason is simply that the surface area of the new landscape is smaller than the previous one.
See attached image. The same setting gives very different results only because the surface areas covered are not comparable in size.
Consider again the artist. This time he needs to cover a teddy in fur. But to save time (when doing test renders) he decides to start with just doing an ear. He figures if he gets the fur right on that part he can then copy the values onto all other parts. So he goes ahead and tweaks the values to perfection, as usual! That ear is looking so fuzzy and soft he is almost giggling, and he's not very ticklish at all! But when he copies the settings over to the other parts they don't look the same. The ears look as they should, but the rest looks like it belonged to a frakking wookie!? Again... the reason is that the surface areas are not comparable.
Similarly, fibers clump is based on the underlying polygons. I can acknowledge that this can be a very usefull and provide a good amount of control. I think we've seen some good examples of that already! But if you want a uniform fur across a character it can work against you, as any halfdecent mesh will have polygons that differ greatly in size.
See attached image. There are 3 separate planes. The leftmost is a single polygon, the middle 4 polygons, the rightmost 8 polygons.
Have I overlooked a setting maybe? Could these issues be solved by using guides (kinda tedious if all you want is uniform short fur)?
Either way, the way "Density" and "Scale" and "Clump" (and perhaps other attribute aswell) works by default is not the best if you want reusable presets nor if you start work on limited regions. These values should not be relative to the surface area they need to cover or size of polygons of the underlying mesh. They should be relative to a fixed area (1x1m?). This way the Density attribute would rightly correspond to fiber density rather than quantity. The Scale (renamed to Length) would correspond to the length of fibers in a common unit of length (meters or other). Clump could use another value (Clump Size!?) that could set the size of clumps or amount of fibers in each clump so it can be controlled independent of how the mesh is constructed. Imho this would make these attributes much less arbitrary and easier to control AND it would make the creation and use of presets viable.
But, as I acknowledged earlier I can appreciate how the way things work now can be very useful. So make it optional! (Ie. don't flame me for thinking out loud and having an opinion.) ;D
*Sorry for the chequered images.
Not considering the misuse of the term "density", this is not a good implementation! It makes creating and using presets very inconvenient:
Consider that a artist on one project has to cover a landscape with grass. He uses FiberFX and manages to get it just right! The grass has the perfect height, the perfect density. It's looks nice and lush! The project is a success! Then comes along another project where a landscape needs to be covered with grass. The artist naturally loads the setting from the previous project. It looked so good last it should look just as good this time. But it doesn't! The grass is short and stubby! Not at all as lush as last time. What happened!? Did the saved settings get corrupted? No, the reason is simply that the surface area of the new landscape is smaller than the previous one.
See attached image. The same setting gives very different results only because the surface areas covered are not comparable in size.
Consider again the artist. This time he needs to cover a teddy in fur. But to save time (when doing test renders) he decides to start with just doing an ear. He figures if he gets the fur right on that part he can then copy the values onto all other parts. So he goes ahead and tweaks the values to perfection, as usual! That ear is looking so fuzzy and soft he is almost giggling, and he's not very ticklish at all! But when he copies the settings over to the other parts they don't look the same. The ears look as they should, but the rest looks like it belonged to a frakking wookie!? Again... the reason is that the surface areas are not comparable.
Similarly, fibers clump is based on the underlying polygons. I can acknowledge that this can be a very usefull and provide a good amount of control. I think we've seen some good examples of that already! But if you want a uniform fur across a character it can work against you, as any halfdecent mesh will have polygons that differ greatly in size.
See attached image. There are 3 separate planes. The leftmost is a single polygon, the middle 4 polygons, the rightmost 8 polygons.
Have I overlooked a setting maybe? Could these issues be solved by using guides (kinda tedious if all you want is uniform short fur)?
Either way, the way "Density" and "Scale" and "Clump" (and perhaps other attribute aswell) works by default is not the best if you want reusable presets nor if you start work on limited regions. These values should not be relative to the surface area they need to cover or size of polygons of the underlying mesh. They should be relative to a fixed area (1x1m?). This way the Density attribute would rightly correspond to fiber density rather than quantity. The Scale (renamed to Length) would correspond to the length of fibers in a common unit of length (meters or other). Clump could use another value (Clump Size!?) that could set the size of clumps or amount of fibers in each clump so it can be controlled independent of how the mesh is constructed. Imho this would make these attributes much less arbitrary and easier to control AND it would make the creation and use of presets viable.
But, as I acknowledged earlier I can appreciate how the way things work now can be very useful. So make it optional! (Ie. don't flame me for thinking out loud and having an opinion.) ;D
*Sorry for the chequered images.