PMG

Форумы по созданию игр
Текущее время: 02 дек 2021 22:46

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Наложение нескольких текстур RGBA
СообщениеДобавлено: 13 июл 2010 22:56 
Не в сети
Новичок

Зарегистрирован: 13 июл 2010 22:32
Сообщения: 3
Вопрос для профессионалов. Нигде не нахожу подсказки.
Несколько текстур в формате RGBA (RAW+Alpha) могут перемещаться и возможно накладываться друг на друга. Цвет и прозрачность на каждой текстуре одинаковые.

Вопрос: с помощью каких средств OpenGl можно получить изображение, у которого прозрачность и цвет в накладываемых областях будет теми же, что и в исходных текстурах.

P.S. Очевидный вариант с проверкой и переписыванием массивов не годится из-за нехватки времени.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Наложение нескольких текстур RGBA
СообщениеДобавлено: 14 июл 2010 12:52 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Не понимаю что значит "Цвет и прозрачность на каждой текстуре одинаковые." - тогда текстуры должны быть одинаковые!?

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Наложение нескольких текстур RGBA
СообщениеДобавлено: 15 июл 2010 07:50 
Не в сети
Новичок

Зарегистрирован: 13 июл 2010 22:32
Сообщения: 3
Здраствуйте Сергей
Предположим есть 2 квадрата, закрашенные наполовину красным цветом с прозрачностью 0.5.
Один квадрат повернут на 90 градусов. При наложении одного квадрата на другой одна четверть остается белой, а три четверти должны быть одинаковыми, т.е. красными с прозрачностью 0.5.
В этом заключается мой вопрос.
Как Вы понимаете, сейчас я получаю квадрат разбитый на 4 четверти: белый, два красных с прозрачностью 0.5 и красный, с прозрачностью меньшей чем 0.5.
С уважением Гена


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Наложение нескольких текстур RGBA
СообщениеДобавлено: 15 июл 2010 08:56 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Почему три четверти одинаковые? Только две, а одна по идее должна быть менее прозрачной. Прав я?

Теперь мне не понятен вопрос. Что значит с помощью каких "средств"? Функций?

Что значит "прозрачность и цвет в накладываемых областях будет теми же, что и в исходных текстурах"? Если ты что-то накладываешь, то заведомо искажаешь исходную область, как она будет той же? Только если ты наложешь, что-то противоположное полученному результату. Так что ли?

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Наложение нескольких текстур RGBA
СообщениеДобавлено: 18 июл 2010 09:58 
Не в сети
Новичок

Зарегистрирован: 13 июл 2010 22:32
Сообщения: 3
Уважаемый Сергей!
Наш диалог напоминает сказку про белого бычка.
Вопрос задан: Как сделать, чтобы пересекающиеся области не выделялись на рисунке.
Я не специалист в OpenGl и хотел бы сэкономить время, послав сюда вопрос, а не тратить его.
С уважением Гена.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Наложение нескольких текстур RGBA
СообщениеДобавлено: 19 июл 2010 09:04 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Ну вот теперь вопрос мне понятен. Сам такого эффекта не получал, так что могу только по гадать...

Для настройки смешивания используются следующие функции: glBlendFunc, glBlendFuncSeparate, glBlendEquation, glBlendColor. Можно попробывать настроить с помощью них. Но мне кажется в данном случае лучше использовать буфер шаблона или накопителя с той целью, чтобы маскировать уже закрашенную область и не выводить в нее повторно. Например, можно посмотреть здесь: http://pmg.org.ru/nehe/nehe26.htm

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB