2009-12-20 1 views
1

В OpenGL, как можно отрезать треугольное отверстие от квадрата? делая отверстие прозрачным.OpenGL, удалите секции из формы

Я также использую SDL, возможно, это может быть достигнуто с помощью SDL-поверхности?

ответ

1

Хотя делать это на текстуру действительно легче выход, если вам это нужно, чтобы быть реальной формы, вы можете попробовать использовать GLUtesselator от GLU инструментария. См. Руководство для него here.

Общее использование состоит в том, что вы создаете объект тесселатора, создаете два контура (внешний и внутренний в обратном направлении), а тесселятор преобразует их в чистые команды OpenGL. Конечно, если это эффективность, которую вы ищете, вам следует реализовать или найти систему более высокого порядка, которая работает с буферами вершин.

1

Вы можете использовать текстуру и альфа-смешение: текстура будет содержать прозрачный треугольник. См. Это tutorial on blending.

EDIT: Конечно, альфа-смешивание не изменяет геометрию. Для этого вам нужно выполнить более сложные процедуры. См. Это tutorial on realtime CSG.

Ссылка: Constructive Solid Geometry

Смежные вопросы