|
|
"Kenneth" <kdw### [at] gmailcom> wrote:
> Some observations:
> There's a fundamental difference in appearance between box 1 and boxes 2 and 3.
> The normals produced from the function are... layered(?), or *something*. It's
> as if there are no 'blends' between the three color channels' normals-- unlike
> the smooth blend in the left box. I don't know if this is expected behavior or
> not.
Well, this is usually the point where either clipka jumps in with an inside-out
explanation, since he has the big picture of the source code in his head and can
translate, summarize, and put it in proper order and context.
Or I go digging in the source and try to puzzle out the bits.
But my first instinct is that since there a different ways to create a normal
from an image, they are all implemented under the hood differently.
Sort of like the way you can have 2 different heighfields - one "sharp" and
abrupt - and the other smoothed.
I also don't know what would happen if the box were > 1x1, if there were some
sort of interpolation. Or conversely if the image were scaled smaller and
applied to a 1x1 box.
If you want smoothing, then perhaps the simplest first experiment to try is:
"But how about if we want a smooth blend of patterns all the way through? That
is where a new feature called average can come in very handy. Average works with
pigment, normal, and texture maps, although the syntax is a little bit
different, and when we are not expecting it, the change can be confusing. Here
is a simple example. We use our standard includes, camera and light source from
above, and enter the following object.
plane { -z, 0
pigment { White }
normal {
average
normal_map {
[1, gradient x ]
[1, gradient y ]
}
}
}
"
You may have to write a function to use for the weights of the different
channels, but it's something to play with.
What I was thinking about initially was:
NORMAL:
normal {
IMAGE_PATTERN [Bump_Size]
normal_map { NORMAL_MAP_BODY }
}
{And here, 3.4.7.4.2 employs "irregardless". :| For shame. }
Post a reply to this message
|
|