The 2.35 cleanup weeks also involved a refresh of how bump mapping works in Blender. As reported - and we already knew for long - bumpmapping doesn't look fully correct on rotating objects or with moving cameras, because the calculations were all done in local object space. The new version corrects for this now, making it a bit slower, but giving good results in all viewing angles.
The fix only works for the options "Orco" and "UV" mapping though, since these are the only ones happening in local texture space anyway.
Images below: error on a rotating plane with bump map.




Typically procedural textures return a single "intensity" value, which can be fed to the ColorBand tool to turn it into a RGB triplet.
The same ColorBand now is used for calculating the normals as well, giving a much wider control over how the normals get displaced during rendering.
To make it work, you only have to add a ColorBand in the Texture "Colors" Panel. Note however, that the actual colors are not used for normals, but only the average of the RGB values.
The image to the left shows three different ColorBand settings for a regular "Stucci" texture, each giving a very different result for rendering bumps.
Almost all procedural textures in Blender use derivatives for calculating normals for texture mapping (with as exception "Blend" and "Magic). The texture normal, the derivative, is calculated by using four samples in the texture formula:
<ccode>s0= texture(x, y, z)
s1= texture(x+nabla, y, z)
s2= texture(x, y+nabla, z)
s3= texture(x, y, z+nabla)
normal[0]= s0-s1
normal[1]= s0-s2
normal[2]= s0-s3</ccode>
Up to now, the "nabla" offset was a constant (0.025) which worked fine in most cases, but doesn't give proper control over the way a texture is sampled, for example to make the effect smoother or sharper. This feature especially is useful in combination with the ColorBand feature.
In the Material buttons, "Map to" Panel, the new option "Warp" now allows textures to influence/distort the texture coordinates of a next texture channel. The slider "fac" defines the amount of the influence.
The distortion remains active over all subsequent channels, until a new "Warp" has been set. Setting the "fac" at zero cancels out the effect.
The first two images below show how a "Stucci" bumpmap can be used to warp a regular tiles image texture. The third image is a Normal Map which also slightly 'warps' the Tiles texture, for a fake 3d (or parallax) effect.