Комментарии 11
>>тайловый рендеринг, который так прогремел в 2001 году
Вообще-то появился он в 1996г в ускорителе PowerVR-PCX1 от (тогда ещё) VideoLogic.
У меня был вот такой девайс:
ru.vgamuseum.ru/gpu/powervr/videologic-apocalypse-3d-powervr-pcx1
Вообще-то появился он в 1996г в ускорителе PowerVR-PCX1 от (тогда ещё) VideoLogic.
У меня был вот такой девайс:
ru.vgamuseum.ru/gpu/powervr/videologic-apocalypse-3d-powervr-pcx1
Возможно, некоторые особо внимательные личности заметили, что Горизонтальный FSAA убирает лесенки по вертикали, а не по горизонтали. И наоборот.Все тут норм. Горизонтальный FSAA увеличивает разрешение изображения по горизонтали, а значит уберет вертикальные лесенки.
Ну да, молодцы, но я точно не перепутал шоты, хотя FPS и доказывает обратное (на 1024x2 по горизонтали должно тратится больше FPS).Не должно. При увеличении картинки по любому из разрешений в 2 раза площадь тоже увеличивается в 2 раза. Должно быть примерно одинаковое количество fps.
//зануда mode off
А так спасибо за статью. Интересно было почитать, оказывается «тайловый» рендер был в железе еще в те в бородатые времена.
Чёрт, и вам спасибо. Вот честно, так лень было перечитывать тех. доки по FSAA, а вы два слова сказали и всё стало очевидно!
Я вам больше скажу, тайловый рендеринг и сейчас процветает. Вы посмотрите Использованную литературу — там есть ссылки.
Я вам больше скажу, тайловый рендеринг и сейчас процветает. Вы посмотрите Использованную литературу — там есть ссылки.
Во многом благодаря PowerVR в обозримом будущем мы смогли наблюдать интереснейшие вещи. Так, уже в 2007 году в свет вышел любимый Сталкер: Тень Чернобыля, движок которого использует технику под названием Deffered Shading. Нетрудно догадаться, что в основе лежат те же принципы экономии пропускной способности видеопамяти, что и у PowerVRDefered Shading на самом деле упирается как раз в пропускную способность видеопамяти. Если при обычном Forward рендеринге мы пишем только в color buffer и depth buffer и получаем сразу картинку, то в DS нам нужно отрисовать в diffuse, normal, depth. Потом еще срезолвить, а это значит прочитать из этих diffuse, normal, depth, и отрисорвать в color.
Плюсы у DS в том, что мы отделяем геометрическую сложность сцены от освещенния. Иными словами если у нас тяжелое освещение — то при DS мы покрасим только те пиксели, которые реально видно на экране. При forward освещении мы будем освещать те пиксели, которые могут быть overdraw-нуты следующим объектом.
DS был популярный, когда тяжелый свет (много источников, тяжелая модель освещения) GPU не успевал считать. Но сегодня производительность процессора растет быстрее пропускной способности памяти:
GeForce 980: пропускная способность: 224 GB/s, теоретическая производительность: 4612 GFlopsИ смещение снова начинается в сторону Forward освещения. (это и Forward+ предложеный AMD, и Clustered Shading от Humus-а)
GeForce 8800 Ultra: пропускная способность: 103.7 GB/s, теоретическая производительность: 576 GFlops
Вы знаете, я посмотрел про Forward и Clustered Shading. Чего-то там везде тайлы упоминаются, что наводит пещерного человека на мысль… сегодня что ли уже все поголовно тайловый рендеринг так или иначе используют?
Там тайлы создаются для источников света. Если в сцене 100500 источников света, дабы не лопатить все в for(i;i<100500;i++) надо как-то выбрать только те источники, которые действительно достают до данного пикселя. Для этого сначала информация о источниках складывается в тайлы, а после при непосредственном рендере побирается нужный тайл, и обрабатываются только те источники света, которые привязаны к этому тайлу.
TBDR сейчас на мобилках вовсю используется: embedded-computing.com/articles/understand-the-mobile-graphics-processing-unit
А еще в DX12 что-то типа этого притащили: msdn.microsoft.com/en-us/library/windows/desktop/dn903929(v=vs.85).aspx
но в DX12 это скорее попытка OIT положить на графический конвеер потому что memory bandwidth оно не уменьшает.
На десктопах TBDR скорее всего не взлетит (по крайней мере в ближайшем будущем), из-за обилия треугольников, всяких там тесселяций…
TBDR сейчас на мобилках вовсю используется: embedded-computing.com/articles/understand-the-mobile-graphics-processing-unit
А еще в DX12 что-то типа этого притащили: msdn.microsoft.com/en-us/library/windows/desktop/dn903929(v=vs.85).aspx
но в DX12 это скорее попытка OIT положить на графический конвеер потому что memory bandwidth оно не уменьшает.
На десктопах TBDR скорее всего не взлетит (по крайней мере в ближайшем будущем), из-за обилия треугольников, всяких там тесселяций…
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Вперёд в п(р)ошлое. TBDR — the Power We Are