Or rather, is consciously trying to adhere to it still something people keep in mind?
This is actually a general technical question, but since the techical talk forum has been divided into subforums pertaining to specific applications, i figured I'd post it in here though it obviously pertains to any software that draws/renders anything onscreen.
Anyways, I've been trying to fine tune a lot of the technical skills I've been putting off, and the whole idea of 'linear workflow' has always angered/confused me. However, now that I'm trying to figure it out, it seems like most of the material on it is from years ago. Am I right in assuming that most CG software (both realtime and not) has been sort of 'idiot-proofed' to have linear workflow built into every aspect of the pipeline? In the same sense as 'pbr' calculations are made automatically by applications such as marmo and ue4?
Replies
When it comes to authoring content in linear vs sRGB/gamma space, the only thing that matters is consistency. If you authored your albedo map in sRGB, make sure sRGB is enabled in the per-texture options in Toolbag, if you authored it in linear space, make sure sRGB is disabled. This applies to UE4 as well, and probably many other game engines/renderers.
A few rules of thumb:
Normal maps are always in linear space.
Albedo or diffuse maps are often authored in sRGB, but do not have to be.
Gloss or roughness maps are often authored in linear space, but do not have to be.
Metalness maps are often authored in linear space, but do not have to be.
Specular maps are often authored in sRGB, but do not have to be.
One final thing to consider, if you have a mix-map, that is, a texture with multiple inputs packed into various channels, all of them will have to be set to either linear space or sRGB. So, if you pack a metalness map, roughness map and AO/cavity map all into on texture, you need to make sure they are all authored in the same color space, which would typically be linear in this case.
Generally, the color space you work in/use for each input type isn't something you would decide on a per-asset basis, but rather something you would have standards for on a project-wide basis. This will ensure that art content can easily be reused on multiple assets if needed.
On more realistic project we would always use spec/gloss/displacement and HDRI as linear although they are rarely use as-is, look dev team always apply some adjustment in 3D apps to get the final look they want.