For macro scale variation on things like rocks it is pretty common to use world space projected textures. that's done in the shader in the engine. Images would help a lot. Words like "large" and "better quality" aren't very precise.
you can detect angles in shader in your engine to select for edges. Its probably possible to multiply a noise on top of that to break it up and look more natural. Not sure what rendering engine you are using, but for most of the big game engines you can find tutorials which will show you have to do basic edge/slope…