You have the right idea but let me introduce you to a whole new world of possibilities: shaders.
A material is not a just 2D image, it’s a shader.
A shader in UE4 is normally written in HLSL (it’s a shading programing language) although the material editor makes this really easy so you don’t have to actually write any code much like blueprints instead of C++.
So as you can imagine you can do all sorts of awesome things with a material that go far beyond what a texture can do… custom lighting models, parallax occlusion, ocean displacement and so on… the possibilities are endless really.
There are cases where you don’t need to use a texture in a material at all too.