ПрограммированиеФорумГрафика

На каком этапе делается отсечение? (3 стр)

Страницы: 1 2 3 4 Следующая »
#30
17:20, 2 июня 2010

Ему надо знать всё по тематике "отсечение лишнего".

#31
19:15, 2 июня 2010

Ага, мне надо знать всё :)

#32
20:20, 2 июня 2010

Unknown_000
Забей на отсечение видюхой, просто каждому объекту должна соответствовать окружность полностью его накрывающая по которой ты на процессоре за несколько десятков тактов будешь определять попала она в фрустум или нет

#33
21:00, 2 июня 2010

Super_inoy
> каждому объекту
Правильнее всё-таки не к объекту,  а  к группе объектов. 

Unknown_000
Обычно проверяют дочерние объекты баундсферы или баундбокса.

#34
21:45, 2 июня 2010

ksacvet777
правильнее пострить октодерево ага, но зачем это говорить человеку который является новичком в геймдеве? воспользовавшись простым советом он получил бы повышение производительности раз в 500, а в случае с группой объектов возникают вопросы, по какому принципу группировать, какой оптимальный размер группы в трисах, etc.. Зачем усложнять?

#35
22:03, 2 июня 2010

Unknown_000
Видюха не делает никаких отсечений.

#36
22:11, 2 июня 2010

Никто ничего не усложняет.    Топикстар, дочерние - значит те, которые находятся внутри бокса. Следовательно , если бокс не в пирамиде видимости, значит и его сынишки и дочурки тоже не видны и их не рисуют. 

Так надеюся понятнее.

#37
22:16, 2 июня 2010

При отсечении лишнего важно чтобы время проверки на видимость было в разы меньше времени отрисовки.
Иначе не совсем понятен смысл апчхимизации.

#38
22:26, 2 июня 2010

да это всё понятно, что вы говорите (спасибо, что не молчите :)) особенно идея  о построении дерева с вложенными баундбоксами. мне интересна теория как таковая,т.е. ответы на вопросы: почему сделано так, а не иначе. просто хочется всю картину видеть целиком (весь конвеер). А то как не откроешь какую нить книгу - везде приближённо. Может кто знает реально детальную книгу про конвеер или директ3Д?

#39
22:56, 2 июня 2010

Unknown_000
> просто хочется всю картину видеть целиком (весь конвеер)
вершинный шейдер -> определение граней -> растеризация -> иерархический z-stencil -> попиксельные операции

Что ещё тебе нужно?

Сделано так, а не иначе, потому что так работает быстро и мало жрёт транзисторов.
Конкретно по стадиям:
1) Вершинный шейдер.
Тут ты делаешь что хочешь, можешь трансформировать вершину и рассчитывать освещение, что угодно. Можешь ничего не делать.
Главное - ты здесь задаёшь позицию вершины и интерполируемые аттрибуты.
2) Определение граней - определяет полигон, который будет рисоваться, или не будет, если он лежит вне экрана. Тут определяются субпиксели для мультисемплинга. Эта часть жёстко вшита в железо.
3) Растеризация - здесь определяются пиксели под заливку и то, как будут интерполироваться аттрибуты.
4) Иерархические z-stensil тесты - предварительные тесты глубины и трафарета с буферами в 256, 64 и 16 раз меньше, чем экранный. Вшито в железо.
5) Попиксельные операции - фрагментный шейдер, тест глубины, трафарета, свой тест (discard).

Куда подробнее?

#40
7:10, 3 июня 2010

Unknown_000
> ответы на вопросы: почему сделано так, а не иначе.

почему солнце на востоке встаёт ? исторический так сложилось ...
ты хочешь графикой заниматься или философией ?
лучши учи матчасть КАК СДЕЛАНО, а не  ПОЧЕМУ СДЕЛАНО ИМЕННО ТАК :)

#41
8:10, 3 июня 2010

"Почему так сделано" - это самый простой вопрос, на который уже был дан ответ. Так проще реализовать в железе. Графический конвейер так устроен, что все уго участки линейны и легко распараллеливаются. При этом можно перебрасывать ресурсы с одной стадии на другую. И единственный участок, который тяжело распараллеливается - это растеризация. Но и это распараллелено в самой последней архитектуре GPU - Fermi.
А так в более старых архитектурах затык обычно был в передаче данных из одной стадии в другую (экспорт вершин), ну и в растеризации. И то и другое уже не является ботлненком в ферме, и в следующей архитектуре AMD тоже скорее всего не будет.

#42
9:47, 3 июня 2010

SNVampyre
> z-stensil
интересно,  как  работает иерархический stencil :)

#43
9:54, 3 июня 2010

innuendo
> интересно, как работает иерархический stencil :)
http://www.ixbt.com/video2/r420-p1.shtml

Остановимся на самых интересных фактах. Во-первых, если ранее в R3XX было максимум два процессора квадов, обрабатывающих за такт блок из четырех пикселов (2х2) то теперь таких процессоров стало четыре. Они полностью независимы и каждый из них может исключаться из работы (например, для создания облегченной версии чипа с тремя процессорами при наличии брака в одном из них).

Отметим, что во многом схема похожа на NV40, но есть и кардинальные отличия, на которых мы остановимся подробнее.

Итак, вначале треугольник разбивается на блоки первого уровня (8х8 или 4х4 в зависимости от разрешения рендеринга) и происходит первая ступень отбрасывания невидимых блоков, на основе данных полностью размещенного на чипе мини Z буфера. Его объем не афишируется, но, судя по всему, в R420 он занимает несколько менее 200 килобайт. Всего на этой стадии может быть откинуто до 4 блоков за такт, т.е. до 256 невидимых пикселей.

Затем происходит вторая ступень разбиения - на сей раз, на квады размером 2х2 и происходит раннее отсечение полностью невидимых квадов, на основе хранимого в видео памяти Z буфера второго уровня, с гранулярностью покрытия 2х2. Отметим, что в зависимости от режима MSAA один элемент этого буфера может соответствовать 4 (нет), 8(MSAA 2х), 16 (MSAA 4х) или даже 24 (6х MSAA) точкам в буфере кадра, вот почему его выделение в отдельную структуру, занимающую промежуточный уровень между мини буфером глубины полностью расположенном на чипе и окончательным буфером глубины базового уровня. Таким образом в продуктах NVIDIA мы имеем дело с двухуровневой организацией HSR и буфера глубины, а в продуктах ATI с трехуровневой. Далее, в синтетических тестах, мы обратим внимание на влияние этого фактора на производительность.

#44
9:56, 3 июня 2010

SNVampyre
> интересно, как работает иерархический stencil

я не спрашивал про HiZ
я про stencil ИЕРАРХИЧЕСКИЙ спросил

Страницы: 1 2 3 4 Следующая »
ПрограммированиеФорумГрафика

Тема в архиве.