C++ это неплохой выбор для новичка, если новичок нацелился на серьёзное программирование, будь то высокопроизводительное прикладное ПО или качественные игры. Но это действительно очень сложный язык. Очень целеустремлённому, не боящемуся трудностей новичку есть смысл в это ввязываться, так как это очень востребованная ниша; а если человек изначально связался, скажем, с Python, то по-настоящему серьёзное программирование с тонким управлением памятью, процессорными инструкциями, внешними устройствами и ручную работу с мусором он уже никогда не потянет. Именно для геймдева в наше время есть лишь три нормальных языка - C++ (максимальная производительность везде, основа почти всех современных игровых движков включая условно-бесплатный Unreal Engine 4), C# (чуть хуже производительность, но проще программирование, основа популярного движка Unity), Kotlin (отличный выбор для кроссплатформенных игр)
Для входа в C++ желательно иметь представление об алгоритмах и структурах данных по Вирту. Чаще всего C++ сам по себе служит базой для сильных программистов, освоив которую вы легко освоите любую другую технологию и сумеете воспользоваться ей гораздо эффективнее кодера, который просто не понимает причинно-следственных связей, так как не в курсе что творится "под капотом".