![]() |
|
Модераторы: Rickert, Alexeis, BorisVorontsov |
![]()
|
|
| Гость_Алексей |
|
|||
|
Unregistered |
Вопрос начинающего.
Можно ли как-то в OpenGL выводить 2D изображения с ключом прозрачности (т.е непрямоугольной формы )? И можно ли использовать альфа на отдельные текселы текстуры? Это бы решило проблему. |
|||
|
||||
| Писатель |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 7.9.2005 Репутация: нет Всего: 1 |
Можно.
Просто нужно рисовать через растр. А прозрачность указывается так же, как и при трёхмерном выводе - через альфа текстуру(как один из вариантов). |
|||
|
||||
| Zealot |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 23.10.2005 Репутация: нет Всего: нет |
Вообще то можно.
Я, к примеру, на делфи делал загрузку РГБ растра, потом прогонял его циклом, и сортировал тип прозрачности для цвета. Вот моя процедура: Procedure SetAlpha(data : pointer; size : integer; Alpha : Byte; R , G , B : Byte); asm push ebx mov eax,data mov ecx,size @loop: mov bl,[eax+0] cmp bl,b jne @lbl mov bl,[eax+1] cmp bl,g jne @lbl mov bl,[eax+2] cmp bl,r jne @lbl mov [eax+3],alpha @lbl: add eax,4 dec ecx jnz @loop pop ebx end; так что - если надо - дерзай, рад помочь, удачи! |
|||
|
||||
![]()
|
| Вы можете найти полезным что... | |
|
|
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |