The warp.cpp source code has long had some unfinished normal related
warp and unwarp hooks. Those of us working on the code of late haven't
really understood them - as far as I know.
Patterns today work in the normal block with all sorts of transforms and
warps, so those hooks are aimed at...?
While working of late on normal block patterns it hit me we don't warp
the incoming normal, but rather the perturbation patterns/methods via
the unwarped / warped EPoint(1). We cannot today warp the incoming raw
normals with warp{}s.
So, I started to play with an idea for new normal pattern which
allows/enables this. It's currently working with the difference between
the intersection location and the warp{} / turbulence affected EPoint.
In other words, there isn't an actual specific perturbation method /
pattern - it's whatever your warp{}s create.
Attached are a couple of images. One uses three repeat warps and a touch
of turbulence. The second a spiral -> turbulence -> spiral combination.
Still playing / thinking, but looks promising.
Bill P.
Post a reply to this message
Attachments:
Download 'nrmlpertbywarps.jpg' (77 KB)
Download 'nrmlpertbywarps1.jpg' (85 KB)
Preview of image 'nrmlpertbywarps.jpg'
Preview of image 'nrmlpertbywarps1.jpg'
|