Преобразование, отсечение и освещение ( T&L или TCL ) — термин, используемый в компьютерной графике .
Трансформация — это задача создания двухмерного вида трехмерной сцены . Отсечение означает рисование только тех частей сцены, которые будут присутствовать на изображении после завершения рендеринга. Освещение — это задача изменения цвета различных поверхностей сцены на основе информации об освещении.
Аппаратный T&L использовался в игровых платах с 1993 года [1] и в домашних игровых консолях с Virtua Processor (SVP) Sega Genesis , SCU-DSP Sega Saturn и GTE Sony PlayStation в 1994 году и RSP Nintendo 64 в 1996 году, хотя это был не традиционный аппаратный T&L, а все же программный T&L, работающий на сопроцессоре вместо основного ЦП, и его можно было использовать для элементарных программируемых пиксельных и вершинных шейдеров. Более традиционный аппаратный T&L появился на консолях с GameCube и Xbox в 2001 году (PS2 все еще использовала векторный сопроцессор для T&L). Персональные компьютеры реализовали T&L в программном обеспечении до 1999 года, поскольку считалось, что более быстрые ЦП смогут идти в ногу с требованиями все более реалистичного рендеринга. Однако трехмерные компьютерные игры того времени создавали все более сложные сцены и детализированные световые эффекты гораздо быстрее, чем увеличивалась вычислительная мощность центрального процессора.
GeForce 256 от Nvidia был выпущен в конце 1999 года и представил аппаратную поддержку T&L на рынке потребительских видеокарт для ПК . Он имел более быструю обработку вершин не только из-за аппаратного обеспечения T&L, но и из-за кэша, который позволял избежать необходимости обрабатывать одну и ту же вершину дважды в определенных ситуациях. В то время как DirectX 7.0 (в частности, Direct3D 7) был первым выпуском этого API для поддержки аппаратного обеспечения T&L, OpenGL поддерживал его гораздо дольше и, как правило, был областью деятельности старых профессионально ориентированных 3D-ускорителей, которые были разработаны для автоматизированного проектирования (САПР), а не для игр.
Интегрированный графический чипсет ArtX от Aladdin также имел аппаратное обеспечение T&L и был выпущен в ноябре 1999 года как часть материнских плат Aladdin VII для платформы Socket 7. [2]
S3 Graphics выпустила ускоритель Savage 2000 в конце 1999 года, вскоре после GeForce 256, но S3 так и не разработала рабочие драйверы Direct3D 7.0, которые бы обеспечивали аппаратную поддержку T&L. [3]
Аппаратный T&L не имел широкой поддержки приложений в играх в то время (в основном из-за того, что игры Direct3D преобразовывали свою геометрию на ЦП и не могли использовать индексированную геометрию), поэтому критики утверждали, что он не имел большой ценности в реальном мире. Первоначально он был лишь отчасти полезен в нескольких 3D- шутерах от первого лица на основе OpenGL того времени, в частности, в Quake III Arena . 3dfx и другие конкурирующие компании по производству видеокарт утверждали, что быстрый ЦП компенсирует отсутствие блока T&L.
Первоначальным ответом ATI на GeForce 256 стал двухчиповый Rage Fury MAXX . Используя два чипа Rage 128, каждый из которых отрисовывал альтернативный кадр, карта смогла несколько приблизиться к производительности карт GeForce 256 с памятью SDR, но GeForce 256 DDR все еще сохраняла максимальную скорость. [4] В то время ATI разрабатывала свой собственный графический процессор, известный как Radeon , который также реализовал аппаратный T&L.
Видеокарта Voodoo5 5500 от 3dfx не имела блока T&L, но по производительности она могла сравниться с GeForce 256, хотя Voodoo5 вышла на рынок поздно и на момент своего выпуска не могла сравниться с последующей GeForce 2 GTS.
STMicroelectronics ' PowerVR Kyro II , выпущенный в 2001 году, смог соперничать с более дорогими ATI Radeon DDR и NVIDIA GeForce 2 GTS в бенчмарках того времени, несмотря на отсутствие аппаратного преобразования и освещения. Поскольку все больше игр оптимизировались для аппаратного преобразования и освещения, KYRO II утратил свое преимущество в производительности и не поддерживается большинством современных игр.
3DMark 2000 от Futuremark активно использовал аппаратный T&L, в результате чего Voodoo 5 и Kyro II показали низкие результаты в тестах производительности, уступив бюджетным видеокартам T&L, таким как GeForce 2 MX и Radeon SDR.
К 2000 году только ATI с их сопоставимой серией Radeon 7xxx оставалась прямым конкурентом GeForce 256 и GeForce 2 от Nvidia . К концу 2001 года все дискретные графические чипы имели аппаратный T&L.
Поддержка аппаратного T&L обеспечила GeForce и Radeon прочное будущее, в отличие от их предшественников Direct3D 6, которые полагались на программный T&L. Хотя аппаратный T&L не добавляет новых функций рендеринга, дополнительная производительность позволила создавать гораздо более сложные сцены, и все большее количество игр рекомендовало его в любом случае для работы с оптимальной производительностью. Графические процессоры , которые поддерживают T&L на аппаратном уровне, обычно считаются относящимися к поколению DirectX 7.0.
После того, как аппаратный T&L стал стандартом в графических процессорах, следующим шагом в компьютерной 3D-графике стал DirectX 8.0 с полностью программируемыми вершинными и пиксельными шейдерами . Тем не менее, многие ранние игры, использующие шейдеры DirectX 8.0, такие как Half-Life 2 , сделали эту функцию необязательной, поэтому аппаратные T&L GPU DirectX 7.0 все еще могли запускать игру. Например, GeForce 256 поддерживался в играх примерно до 2006 года, в таких играх, как Star Wars: Empire at War .