В мире архитектурной 3Д-визуализации идет настоящая революция. Там, где еще несколько лет назад доминировали процессоры, стали появляться реалистичные рендер-движки, использующие видеокарты. С каждым обновлением GPU-рендеры становятся реалистичнее, а новинки на рынке железа делают их доступными для большего количества пользователей. Тем не менее, есть распространенный стереотип, что рендер на видеокартах хуже рендера на процессорах. Откуда он появился и есть ли в этом толика правды, разберем в этой статье.
Что такое GPU?
Графический процессор, или GPU, это процессор, специализированный под работу с компьютерной графикой. По сути, это устройство, которое превращает массив данных, созданных в программе для 3D-моделирования, в изображения на экране. GPU может быть частью центрального процессора или располагаться на материнской плате, но чаще всего выпускается в виде видеокарт, совмещающих в себе GPU, видеопамять (VRAM) и видеоконтроллер.
Основное различие между GPU и CPU в том, что каждое отдельное ядро в графическом процессоре заточено на выполнение очень ограниченного количества команд и по мощности сильно уступает ядрам в современных центральных процессорах. В то же время таких ядер на GPU в десятки раз больше, чем на CPU. Архитектура GPU позволяет выполнять множество однотипных и не зависящих друг от друга задач с огромной скоростью. Например, современные видеокарты позволяют играть в игры с 3D-графикой, реалистичными светом и тенями и сложными текстурами на 4k мониторах с частотой обновления изображения более 100 кадров в секунду!
Реалистичный значит требовательный
Самый интуитивный способ создать реалистичное изображение - это повторить процессы, происходящие в жизни. Световой луч, испускаемый солнцем или другим источником света, падает на поверхность и отражается от неё, разбиваясь на пучок новых световых лучей, которые падают и отражаются от других поверхностей рядом. С каждым отражением интенсивность света падает, то есть свет рассеивается. Физически, фотоны никогда не останавливаются, но практически они перестают ощутимо влиять на объекты после нескольких отражений.
Конечно, просчитать такое почти бесконечное число лучей при помощи компьютера не предоставляется возможным. Чтобы оптимизировать процесс, современные рендер-движки работают с лучами в обратном направлении: испускают из камеры лучи, которые отражаются и рассеиваются на объектах сцены пока не достигают источника света. Но даже в таком случае, количество испускаемых лучей измеряется миллионами. Их количество контролируется числом отскоков - это максимальное количество раз, которые луч отразится. Если это число достигнуто, а источник света так и не найден, значит свет на данный участок изображения не падает.
Изначально реалистичный рендер был возможен только на процессорах, причем, на профессиональных, многопоточных серверных компьютерах. Помимо частоты и количества ядер, большую роль играет и доступный объем RAM: чем он больше, тем больше реалистичных текстур можно использовать в сцене. За последнее десятилетие, многоядерные процессоры стали доступны для широкой публики и собрать оптимальный компьютер для рендера в Corona намного проще. За тот же промежуток времени, что и раньше, можно отрендерить изображение с большим количеством отскоков лучей и более четкими текстурами. То есть - более реалистичное.
Переход с CPU на GPU
GPU-рендер тоже не стоял на месте все это время. Наиболее очевидный прогресс шел в сфере компьютерных игр: к началу 20-х годов множество проектов могли похвастаться реалистичной графикой, особенно когда дело касается освещения. Технология ray-tracing (трассировка лучей) стала продающей для новых поколений видеокарт NVidia, к которым вскоре присоединились AMD и Intel.
Конечно, в компьютерных играх не используются физически-корректный рендеринг, даже трассировка лучей задействуется только в частных случаях. Основной прогресс достигнут путем запекания детализированных текстур, а увеличение объема VRAM на современных видеокартах позволило использовать намного больше текстурных карт. В 2007 году, NVidia представила программно-аппаратную архитектуру CUDA, благодаря которой вычислительная мощность видеокарт выросла в разы. С тех пор, технология развивалась постоянно: для сравнения, модель GTX 285 (2009 год) вышла с 240 CUDA-ядрами, а RTX 5090 (2025 год) - с 21 760!
Развитие железа не осталось незамеченным разработчиками физически-корректных рендер-движков. Например, V-Ray GPU превратился из ограниченного движка для набросков в полную альтернативу V-Ray CPU. работающую в разы быстрее. В сфере архитектурной визуализации набирают популярность Lumion и Unreal Engine 5; Redshift является основным рендер-движком в Cinema 4D; Arnold и Cycles работают как на CPU, так и на GPU. А с приходом ИИ инструментов для апскейла (увеличения разрешения) получить качественную фотореалистичные рендеры можно и не на самых мощных графических процессорах.
Конечно GPU-рендеринг имеет свои минусы. Самое очевидное - стоимость видеокарт продвинутого уровня превышает стоимость многоядерных процессоров в несколько раз, так как спрос повышает бум в сфере ИИ. Из-за ограниченного объема VRAM, который нельзя расширить, как это можно сделать с RAM, необходимо контролировать размер используемых текстур. Современные видеокарты более требовательны к охлаждению, чем процессоры. Некоторые сложные эффекты, такие как каустика, многослойные текстуры, анизотропия, могут не поддерживаться при рендере на видеокартах. Но прогресс не стоит на месте: V-Ray 7 представил поддержку реалистичной каустики для V-Ray GPU, а NVidia выпустила RTX 5090 с 32 Гигабайтами видеопамяти (VRAM). Все ограничения постепенно исчезают, а любые недостатки компенсируются невероятной скоростью рендера.
Самый легкий способ ускорить рендеринг своего проекта - это воспользоваться рендер-фермой. На онлайн рендер-ферме Мегарендер, теперь доступны не только мощные CPU, но и современные GPU для рендера. Через личный кабинет работает GPU-рендер в 3DS MAX (V-Ray GPU), Blender (Cycles & EEVEE) и Cinema 4D (Redshift). Если у вас есть крупные проекты в Lumion или Octane, обращайтесь в чат техподдержки для просчета ручного рендеринга. Начать рендерить можно бесплатно, получив приветственные 1000 минут во вкладке Бонусы после регистрации.