Я читал в документации по промежуточному ПО, которое мы используем, что поддержка этого может быть нестабильной, но D3D docs не упоминайте об этом. Мы возвращаемся к самым ранним аппаратным картам Intel GMA SM2.0, в основном GMA950 и GMA3100, поэтому я пытаюсь выяснить, достаточно ли они устарели, чтобы иметь проблемы, или мы говорим о еще более старых исправленных- только функциональные чипсеты.
D3D9 и пользовательские плоскости отсечения (IDirect3DDevice9::SetClipPlane)
comment
Обтравочные плоскости уже некоторое время поддерживаются на большинстве видеооборудования, в том числе с фиксированными функциями. Однако поддержка Intel может быть ненадежной.
- person ssube   schedule 07.04.2011
Ответы (1)
Только не заморачивайтесь с плоскостями отсечения пользователя. Они странным образом эмулируются драйверами. Зачем они вам действительно нужны? Если вы хотите что-то оптимизировать, вы получите небольшой выигрыш на одном аппаратном обеспечении и заплатите ужасную цену за другое. Если вам это нужно для какого-то алгоритма, сделайте это сами, используя texkill, и он будет надежным везде. Вероятно, это не тот ответ, который вы хотели, но в целом просто не используйте его и переосмыслите свой подход.
person
starmole
schedule
11.04.2011
Отсечение целых полигонов означает, что каждый пиксель не должен проходить через шейдеры. Это довольно дорого, так почему это будет лишь небольшой выигрыш, если я могу уменьшить отображаемые пиксели на 50%?
- person Mr. Boy; 13.04.2011
Проблема в том, что большинство аппаратных средств просто не реализуют пользовательские плоскости отсечения. Поэтому они подражают этому. Если вы хотите сохранить заливку, вам нужно использовать базовое отсечение через проекцию или, возможно, отсечение экранного пространства через ножницы. Но пользовательский клип просто не бесплатный. На бумаге это звучит хорошо, но это одна из тех редких функций, которые были круты в 90-х, но в настоящее время занимают место на кристалле.
- person starmole; 26.04.2011
Вы действительно должны посмотреть, как выполняется отсечение в hw: обычно только вдоль z, x/y выполняется после проекции в 2d. На самом деле hw очень сложно обрезать, потому что один треугольник может создать два треугольника, будучи обрезанным. Это требует дорогостоящих кешей — каждая плоскость отсечения может удвоить количество треугольников из одного входного треугольника.
- person starmole; 26.04.2011