Я студент-мастер CS, и в следующем семестре мне придется приступить к работе над моей диссертацией. У меня возникли проблемы с идеей тезиса, но я решил, что это будет связано с компьютерной графикой, поскольку я увлечен разработкой игр и хочу работать профессиональным игровым программистом.
К сожалению, я немного новичок в области 3D-графики, я прошел курс бакалавриата по этому предмету и надеюсь продолжить курс в следующем семестре, и я уже читаю множество книг и статей, чтобы узнать больше, Тем не менее, мой руководитель считает, что лучше, если я придумаю общую идею тезиса, а теперь трачу время на изучение этого в рамках подготовки к моему диссертационному предложению. Мой руководитель снабдил меня хорошими идеями, но я предпочел бы сделать что-то более интересное самостоятельно, которое, надеюсь, связано с играми и дает мне больше возможностей узнать больше о поле. Меня не волнует, если это уже сделано, для меня тезис - это больше возможность узнать о вещах в глубине и сделать существенную работу самостоятельно.
Я мало что знаю о программировании на GPU, и я все еще изучаю шейдеры и языки, такие как CUDA. Одна из моих идей заключалась в том, чтобы запрограммировать всю игру (или, насколько это возможно, на GPU), включая всю логику игры, AI и тесты. Это вдохновляет чтение статей на GPGPU и такие вопросы, как этот. Я не знаю, насколько это возможно, насколько я знаю, и мой руководитель не знает многого о последние графические процессоры. Я уверен, что со временем я смогу ответить на этот вопрос самостоятельно, но было бы удобно, если бы я мог заранее знать ответ, чтобы я мог также рассмотреть другие идеи.
Итак, если у вас так далеко, мой вопрос: используя только шейдеры или что-то вроде CUDA, можете ли вы сделать полную, простую 3D-игру, использующую необработанную мощность и parallelism для графических процессоров? Или мне не хватает некоторых ограничений или различий между графическими процессорами и процессорами, которые всегда будут делать большую часть моего кода привязанным к CPU? Я читал о физических двигателях, работающих на графическом процессоре, поэтому почему не все остальное?