PaintTraverse нужно использовать если хочешь рисовать средствами игры/движка, такая отрисовка будет хорошо смотреться в игре (не залезать на консоль, и т.д.), но будет видна на стримах и записях.
Imgui же рисует через DirectX (или другие бэкэнды), но сама игра использует DirectX9, так что если ты хочешь рисовать imgui в CS:GO то только перехватывать функции Present,EndScene,Reset и делать это в них, этим методом можно сделать и обход стримилок и портировать на другие игры например.