Шейдеры разные бывают. Но чтобы не вдаваться во всякую теорию и нюансы скажу просто. Появилось очень много разного железа, рабочих осей, приставки по сути стали компьютерами. А сами графические вычисления стали сложнее. Сейчас только один свет может отражаться и переотражаться по 20 раз. Плюс сами материалы стали тяжелыми, игры весят уже по 100-300Гб, а ссд скоростные есть не у каждого. И чтобы игрок не видел подгрузку текстур, фризы, лоды и прочие радости оптимизаций на его оборудование компилируются заранее шейдеры, чтобы их можно было быстро подцепить через кэш и не обращаться к более медленной памяти и не проводить рассчеты на гп или цп.
Это не только из-за того, что железо не настолько мощное, но и конечно же из-за того, что у разработчиков есть сроки. И вместо того, чтобы тестировать все на каждом железе и делать гибкие настройки, проще создать вот такой индивидуальный файлик тебе.
А шейдеры всегда компилировались во всех играх. Просто раньше это делалось в реал тайме и скрывалось чем-то вроде "протиснитесь между 2 стенами". Сейчас же стараются от этого отказаться, сделать более плавный геймплей, ну и опять же слишком тяжелыми стали игры + куча разных стандартов. Раньше вы так-то на загрузки смотрели по 2 минуты между уровнями, если забыли)
Шейдеры разные бывают. Но чтобы не вдаваться во всякую теорию и нюансы скажу просто.
Появилось очень много разного железа, рабочих осей, приставки по сути стали компьютерами. А сами графические вычисления стали сложнее. Сейчас только один свет может отражаться и переотражаться по 20 раз. Плюс сами материалы стали тяжелыми, игры весят уже по 100-300Гб, а ссд скоростные есть не у каждого. И чтобы игрок не видел подгрузку текстур, фризы, лоды и прочие радости оптимизаций на его оборудование компилируются заранее шейдеры, чтобы их можно было быстро подцепить через кэш и не обращаться к более медленной памяти и не проводить рассчеты на гп или цп.
Это не только из-за того, что железо не настолько мощное, но и конечно же из-за того, что у разработчиков есть сроки. И вместо того, чтобы тестировать все на каждом железе и делать гибкие настройки, проще создать вот такой индивидуальный файлик тебе.
А шейдеры всегда компилировались во всех играх. Просто раньше это делалось в реал тайме и скрывалось чем-то вроде "протиснитесь между 2 стенами". Сейчас же стараются от этого отказаться, сделать более плавный геймплей, ну и опять же слишком тяжелыми стали игры + куча разных стандартов. Раньше вы так-то на загрузки смотрели по 2 минуты между уровнями, если забыли)