| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > Булевы операции в OpenGL |
| Автор: Salatovec 24.9.2012, 08:56 |
| Доброго времени суток, уважаемые. Подскажите - а возможно ли как-то реализовать булевы операции? Нужен результьтат в точности, как это имеется в 3D Studio Max'e, но в интернете не нашел ни алгоритмов, ни примеров как это, даже примерно, там реализовано. Единственное близкое, что нашёл - это буфер трафарета, но это немножко не то. Вот к примеру - я рисую прямоугольничек и сферу, которые пересекаются. Мне нужно чтобы сфера вырезала в прямоугольничке дырку, а буфер трафарета всего лишь красит эту сферу в чёрный и она местами перекрывает этот прямоугольник, чего быть не должно. Мне нужно, чтобы она совсем пропала, но плюс появилась дырка в прямоугольнике. Так вот ещё вопрос - может я не доконца разобрался с буфером трафарета и это можно реализовать с помощью него? Заранее огромное спасибо! |
| Автор: Amp 24.9.2012, 10:48 |
| Булевые операции с геометрией OpenGL разумеется не поддерживает. Буфер трафарета в данной ситуации подходит лишь для ограниченного подмножества частных случаев. Гугли по словосочетанию "Constructive Solid Geometry" (OpenCSG возможно подойдет) . |