Какими необходимыми инструментами должен владеть программист C++ в сфере разработки игр?
Возьмем простой пример: человек хочет изучить С++ на достаточном уровне чтобы писать в Unreal Engine 4 для создания игр (соло/в команде). Речь идет о создании игр как хобби, поэтому прошу не советовать инструменты, которые неободимы лишь по коммерческим соображениям. Также нет необходимости советовать общие для всех программистов навыки (алгоритмы, английский) - это более чем понятно. Интресуют именно инструменты, грамотное использование которых, помогут программисту писать качественные, оригинальные, быстрые игры, (или хотя бы быть полезным в команде гейм девелоперов)
Заранее спасибо каждому!
Основные инструменты, помимо алгоритмов и навыков программирования, которые нужны для создания качественных игр - это опыт и команда.
Программисту в одиночку достаточно тяжело создать качественную игру в текущих реалиях.
Часто во время создания игр нужно решать достаточно нетривиальные алгоритмические задачи. Также сюда можно добавить проектирование архитектуры грамотное (потому что никто вам заранее не скажет список всех фич игры, и если ваша архитектура будет жесткой - будет очень больно вставлять новую фичу). Также можно добавить понимание процессов работы программы, работы с видеокартой, оптимизаций.
Сумбурно как то получилось, но обобщенно - опыт, команда, командная работа.
А может ли пригодиться знание некоторых скирптовых языков по типу Python или Lua. Или это пустая трата времени если собираешься осваивать лишь Unreal Engine? Другими словами есть ли смысл отвлекаться на другие языки, или лучше сосредоточиться на С++?
titoroselyn Если вы в будущем расчитываете работать где то в команде - то знание других языков пригодится. Особенно питона - на нем всякие автоматизации отлично пишутся.
С++ ? Это все равно что писать на ассемблере. Куча ненужной мороки с контролем памяти. К тому же работать нужно на одном языке и писать на С# также не получится. Уж лучше сразу выбирать бензопилу, а пилу "дружба" выкинуть на помойку истории. Учите нормальные языке, передовые технологии. Не тратьте время на старьё.