Как получить описания режимов мультисэмплинга GPU? - PullRequest
4 голосов
/ 25 мая 2011

Я использую AA в моей игре OpenGL и использую wglChoosePixelFormatARB для выбора подходящего контекста рендеринга. Однако при выборе правильного режима возникла проблема.

Как вы, возможно, знаете, графические процессоры могут использовать различные стратегии AA в различных комбинациях (MSAA, SSAA, CSAA и т. Д.). Например. если я запрашиваю WGL_SAMPLES_ARB = 8, я получаю очень хорошее сглаживание, но оно отключается только частично, когда я звоню glDisable(GL_MULTISAMPLE), тогда как когда я запрашиваю WGL_SAMPLES_ARB = 7, его можно отключить.

Вот цитата, которую я нашел:

Первоначально существовал только мультисэмпловый сглаживание (MSAA). SAMPLES был назначен для количества выборок MSAA на пиксель, выделяемых для этого системного кадрового буфера. Чисто, просто.

Затем поставщики графических процессоров добавили поддержку сглаживания суперсэмпла (SSAA), сглаживания сэмпла покрытия (CSAA) и их комбинации. Например, вот режимы, доступные на NVidia GTX285 в последних версиях драйверов OpenGL 3.3:


Режим AA / Описание

  • 0 - Выкл.
  • 1 - 2x (2xMS)
  • 5 - 4x (4xMS)
  • 7 - 8x (4xMS, 4xCS)
  • 8 - 16x (4xMS, 12xCS)
  • 9 - 8x (4xSS, 2xMS)
  • 10 - 8x (8xMS)
  • 12 - 16x (8xMS, 8xCS)

Итак, я ищу способ получить описание режима АА, какие виды АА он объединяет. Как мне это сделать?

1 Ответ

2 голосов
/ 25 мая 2011

Насколько мне известно, - это без описания, кроме того, что вы пишете, путем перекрестной проверки соответствующей документации от соответствующего поставщика.

Ни OpenGL, ни Direct3D не предоставляютлюбая документация о том, что на самом деле режим АА означает , к сожалению.

...