I’m looking for help implementing a Texture Atlas using the programmable pipeline. Would I just use a loop and glSubTexImage, or would I have to do additional work with the pixel shader?
Depends on whether the texture atlas is known to your input models. If they have texture coords baked for the atlas, you can just use them. Otherwise you might need to do some atlas texcoord computation magic in the frag shader.
Given the filtering and wrap/clamping issues with texture atlases though, you might seriously consider texture arrays instead.
…or if you are willing to be tied to Kepler, GL_NV_bindless_texture…