| PMG http://forum.pmg.org.ru/ |
|
| "Раскраска" http://forum.pmg.org.ru/viewtopic.php?f=1&t=8107 |
Страница 1 из 1 |
| Автор: | _Dok_ [ 24 июл 2011 10:20 ] |
| Заголовок сообщения: | "Раскраска" |
Всем доброго времени суток! Мне хотелось сделать "раскраску", где пользователь мог бы раскрашивать различные предметы. Это 2D разумеется. Предмет загружается в текстуру, отображается. Пользователь имеет в своём распоряжении кисти и краски. Чтобы не заходил за границы рисунка, то сделать "полотно" для рисование через "маску". И программа должна проверять: вся ли "картинка разрисована". Вот с этим проблемка. Как вариант проверять отсутствие "пустых" пятен на полотне. Но не знаю как это сделать в OpenGL. Подскажите, пожалуйста |
|
| Автор: | _Dok_ [ 24 июл 2011 11:08 ] |
| Заголовок сообщения: | Re: "Раскраска" |
Покопавшись в интернете нашёл возможное решение проблемы - использовать функцию glReadPixels(). Я так понимаю, что указав определенные параметры, мы получим массив значений пикселей в указанном прямоугольнике. И сверяя их у нужным значением можно будет проверить заполнен данный прямоугольник цветом или нет. Но это прямоугольник, а если картинка другой формы, сложной, выпуклой, с отверстиями, то тут как проверить. Ведь при такой картинке разумеется не все пиксели будут(да и должны) закрашены. |
|
| Автор: | MagicWolf [ 26 июл 2011 16:21 ] |
| Заголовок сообщения: | Re: "Раскраска" |
Если многоугольник, то берешь ограничивающий прямоугольник. |
|
| Автор: | _Dok_ [ 27 июл 2011 09:12 ] |
| Заголовок сообщения: | Re: "Раскраска" |
Ну а можно используя функцию glReadPixels() получить такой результат: - что "под маской" чёрного цвета; - полотно белого(если нет краски); - полотно того цвета которого покрашено. ??? |
|
| Автор: | MagicWolf [ 27 июл 2011 11:11 ] |
| Заголовок сообщения: | Re: "Раскраска" |
ReadPixels просто выдает значение пикселя и все. Маску можно получить - маскирование или через буфер шаблона. |
|
| Страница 1 из 1 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|