|
|
In article <chvhs4$vp1$1@chho.imagico.de>, chr### [at] gmxde says...
> Patrick Elliott wrote:
> >
> > Speaking of reality.. There is 'the right way' and there is the
> > 'practical way'. Sometimes it simply isn't practical to do things the
> > 'right' way. A good example would be using an organic model design by
> > someone else. There is no 'practical' way to make sure that the model is
> > solid, especially if you used it for animation, where each frame runs the
> > risk of added unexpected holes in the object. Media cannot function with
> > such uncertainty to produce subsurface scattering. [...]
>
> What makes you think that a dedicated subsurface scattering feature
> (which in any case is an approximation of scattering media simulation)
> would lead to good results where media does not?
>
I am just looking at it logically. Since media must be completely
contained to prevent it from spilling into parts of the scene that it
does not belong in, the probability of a flaw completely screwing it up
in complex meshes is quite high. There is also the issue where you want
the scattering to take into account a second 'surface', such as a
simulation of blood vessels, etc. under skin. This could be accomplished
by placing a texture or map at an arbitrary 'depth' where the scattering
is supposed to happen using BSSRDF, or you have to apply it as a texture
to a smaller version of the same mesh, inside the original. The problem
is that there 'may' be cases where simply scaling the model by some small
factor to produce such a layer wouldn't work. The scaling might cause
unintended overlaps or other complications. Yes, if everything works 100%
perfectly, then media is just as good for both cases, but life and CG is
never perfect. In the cases of something like skin, the scattering needed
is a lot easier to fake with certainty that it should work, than try to
implement using media, which can go wrong if the mesh has defects. It is
as simple as that.
I am not saying it doesn't work, just that for some applications it seems
like it would prove more complicated and failure prone, which makes it a
bit less practical to try to get working correctly.
--
void main () {
call functional_code()
else
call crash_windows();
}
Post a reply to this message
|
|