the name is dot3 bump mapping because <normal dot light> gets done per pixel. this requires a normal per pixel and these normals are encoded in a normal map!

you can generate the normal map from a height map or from a high poly model. with high poly models you have more control over it and the results probably will be more impressive...