I’ve recently returned from Unity engine where you have to store roughness in diffuse alpha channel, or both metallic and roughness in one texture, etc, you got the idea. So I’ve been wondering if this is outdated technique and should I use the same workflow in UE4? I’m aiming for low/mid-end PCs
Yes you should if you care about low-end performance. It’s not outdated but an optimisation for more efficient use of video memory. This sort of thing can help loads on mobile.