Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 3D-программирование

3D-программирование Вопросы, касающиеся программирования 3D мира

Ответ
 
Опции темы
Старый 04.06.2010, 18:49   #1
Raiter
Гигант индустрии
 
Регистрация: 04.08.2006
Сообщений: 2,642
Написано 53 полезных сообщений
(для 92 пользователей)
Вопрос Альфа для спрайта

Вопрос следующий: не получается сменить прозрачность для спрайта.

    For Hole = Each HoleType

	Hole\Alpha=Hole\Alpha-.001
	If Hole\Alpha>0
		EntityAlpha Hole\Entity,Hole\Alpha
	Else
		FreeEntity Hole\Entity
		Delete Hole
	EndIf

    Next
Спрайт изчезает, когда прозрачность равна нулю, но он исчезает не плавно, как должен был бы. С другими объектами таких проблем не возникает. В чем трабла?
(Offline)
 
Ответить с цитированием
Старый 04.06.2010, 19:18   #2
rr333
Нуждающийся
 
Регистрация: 07.02.2009
Сообщений: 92
Написано 16 полезных сообщений
(для 38 пользователей)
Ответ: Альфа для прайта

Наверно Hole\Alpha - целочисленное число. Проверь, у тебя должно быть в holetype
Field alpha#
(Offline)
 
Ответить с цитированием
Старый 04.06.2010, 19:22   #3
Raiter
Гигант индустрии
 
Регистрация: 04.08.2006
Сообщений: 2,642
Написано 53 полезных сообщений
(для 92 пользователей)
Ответ: Альфа для прайта

rr333,да нет. Всё правильно.
Type HoleType					
	Field Entity					
	Field Alpha#
End Type
(Offline)
 
Ответить с цитированием
Старый 04.06.2010, 19:53   #4
Dream
быдло
 
Регистрация: 05.08.2007
Сообщений: 1,435
Написано 614 полезных сообщений
(для 1,489 пользователей)
Ответ: Альфа для прайта

попробуй ради интереса держать в переменых прозрачность увеличиную в 100- раз, а когда будешь именно EntityAlpha Hole\Entity,Hole\Alpha раздели прозрачность на 100, просто чтобы понять что баг не в числах)
(Offline)
 
Ответить с цитированием
Старый 04.06.2010, 20:16   #5
Raiter
Гигант индустрии
 
Регистрация: 04.08.2006
Сообщений: 2,642
Написано 53 полезных сообщений
(для 92 пользователей)
Ответ: Альфа для прайта

Dream, эфект отсутствует
(Offline)
 
Ответить с цитированием
Старый 04.06.2010, 20:25   #6
Dream
быдло
 
Регистрация: 05.08.2007
Сообщений: 1,435
Написано 614 полезных сообщений
(для 1,489 пользователей)
Ответ: Альфа для прайта

покажи код)) вобще, ты пробывал в режиме дебаг следить за значением переменой Hole\Alpha?
(Offline)
 
Ответить с цитированием
Старый 04.06.2010, 21:44   #7
Raiter
Гигант индустрии
 
Регистрация: 04.08.2006
Сообщений: 2,642
Написано 53 полезных сообщений
(для 92 пользователей)
Ответ: Альфа для спрайта

Дык показал код. В дебаг моде запускал. Всё нормально с переменной. Изменяется как и должна...
(Offline)
 
Ответить с цитированием
Старый 04.06.2010, 23:08   #8
EvilChaotic
Мастер
 
Аватар для EvilChaotic
 
Регистрация: 05.04.2008
Сообщений: 910
Написано 530 полезных сообщений
(для 3,006 пользователей)
Ответ: Альфа для спрайта

А все потому, что бленд твоего спрайта равен Multiply.

ЗЫ. В загрузке спрайта стоит xEntityBlend ent,2! Попробуй поменять например на 3 (Add) и альфа заработает. Но это уже будет не черная дыра )
__________________

EvilChaotic About
(Offline)
 
Ответить с цитированием
Старый 04.06.2010, 23:45   #9
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: Альфа для спрайта

ппц
при чеи тут бленд:?
фх виноват

EntityFX entity,fx
Parameters
entity - entity handle

fx -
0: nothing (default)
1: full-bright
2: use vertex colors instead of brush color
4: flatshaded
8: disable fog
16: disable backface culling
32: force alpha-blending
__________________
(Offline)
 
Ответить с цитированием
Старый 04.06.2010, 23:56   #10
EvilChaotic
Мастер
 
Аватар для EvilChaotic
 
Регистрация: 05.04.2008
Сообщений: 910
Написано 530 полезных сообщений
(для 3,006 пользователей)
Ответ: Альфа для спрайта

Сообщение от tormoz Посмотреть сообщение
ппц
при чеи тут бленд:?

В примере, откуда сорвана эта дырка, спрайт загружается так:
	hole_sprite=LoadSprite( "sprites\bullet_hole.bmp",1 )
	EntityBlend hole_sprite,2
	SpriteViewMode hole_sprite,2
	HideEntity hole_sprite
При бленде add все работает хорошо, спрайт альфится. Иначе нехрена.
Я по ситуации говорю, а нюансы тебе виднее.

Castle.bb
__________________

EvilChaotic About
(Offline)
 
Ответить с цитированием
Старый 05.06.2010, 02:17   #11
Raiter
Гигант индустрии
 
Регистрация: 04.08.2006
Сообщений: 2,642
Написано 53 полезных сообщений
(для 92 пользователей)
Ответ: Альфа для спрайта

Хм. Ну и как сделать что бы и черной дырка была и исчезала плавно ?
(Offline)
 
Ответить с цитированием
Старый 05.06.2010, 17:59   #12
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: Альфа для спрайта

EntityFX entity,50
__________________
(Offline)
 
Ответить с цитированием
Старый 05.06.2010, 21:28   #13
Raiter
Гигант индустрии
 
Регистрация: 04.08.2006
Сообщений: 2,642
Написано 53 полезных сообщений
(для 92 пользователей)
Ответ: Альфа для спрайта

tormoz, не помагает
(Offline)
 
Ответить с цитированием
Старый 06.06.2010, 00:52   #14
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: Альфа для спрайта

значит ты накосячил
как создаешь спрайт
__________________
(Offline)
 
Ответить с цитированием
Старый 06.06.2010, 02:11   #15
Raiter
Гигант индустрии
 
Регистрация: 04.08.2006
Сообщений: 2,642
Написано 53 полезных сообщений
(для 92 пользователей)
Ответ: Альфа для спрайта

Вот такой код изначально:
Global ExplosionHole = LoadSprite("textures\explosion_hole.bmp",1) 
EntityBlend ExplosionHole,2
SpriteViewMode ExplosionHole,2
ScaleSprite ExplosionHole,50,50
RotateEntity ExplosionHole,90,0,0
HideEntity ExplosionHole
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 20:31.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com