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

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

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

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

Ответ
 
Опции темы
Старый 07.08.2007, 13:50   #61
IGR
Blitz's Shame !!
 
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений
(для 2,013 пользователей)
Re: Анимация (и еще пару вопросов)

Но тут же проверяем, наведен ли курсор на кнопку, получаем положительный ответ, и...
If RectsOverlap(x,y,ImageWidth(ImBtn),ImageHeight(ImB tn),mx,my,1,1)
sou1=1
f=1
я не пойму почему мы получаем положительный ответ !!
или ты хочеш чтоб звук проигрался один раз когда ты только первый раз подвидеш мышку к кнопке ??
тогда напиши :
If RectsOverlap(x,y,ImageWidth(ImBtn),ImageHeight(ImB tn),mx,my,1,1)
sou1=sou1+1
f=1
y2=0
.....
следовательно когда мы второй раз проверяем RectsOverlap то sou1=2 и звук играть не будет !!
(Offline)
 
Ответить с цитированием
Старый 07.08.2007, 13:56   #62
Maestro
ПроЭктировщик
 
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Анимация (и еще пару вопросов)

IGR, мне надо, чтобы при наведении на одну кнопку проигрался один звук один раз, потом если отвести от кнопки курсор, а потом навести обратно на нее же или на другую кнопку, сново проигрался тот же звук один раз.
Поэтому если наращивать переменную sou1=sou1+1, ее надо как-то вернуть если увести курсор от кнопки....
Вот кстати код (там звуки и кнопка прилогаются)
(Offline)
 
Ответить с цитированием
Старый 07.08.2007, 14:01   #63
IGR
Blitz's Shame !!
 
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений
(для 2,013 пользователей)
Re: Анимация (и еще пару вопросов)

Function RefreshButton(ImBtn,x,y,txt$,n)
mx=MouseX(): my=MouseY()
MHit=MouseDown(1)
If RectsOverlap(x,y,ImageWidth(ImBtn),ImageHeight(ImB tn),mx,my,1,1)
sou1=1+1
f=1
y2=0
If MHit=True
sou2=1
f=2
y2=2
Button(n)=1
EndIf
Else
sou1=0;если мышко не возле кнопки - обнуляем переменную
f=0
y2=0
EndIf

If sou1=1 Then
PlaySound SelectBut
sou1=0
EndIf

If sou2=1 Then
PlaySound ClickBut
sou2=0
EndIf

DrawImage ImBtn,x,y,f
Color 0,0,0
Text x+0.5*(ImageWidth(ImBtn)+4-Len(txt$)*FontHeight()*0.5),y+0.5*(ImageHeight(ImB tn)-4-FontHeight())+y2,txt$
End Function


код шас посмотреть не могу, так как я не дома !!
вечером посмотрю !!
(Offline)
 
Ответить с цитированием
Старый 07.08.2007, 14:27   #64
Maestro
ПроЭктировщик
 
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Анимация (и еще пару вопросов)

Ну. вот мы проктически и пришли к моему первому варианту. Проблема в том, что все после Else выполняется почемуто в любом случае... и все время sou1=0, следовательно звук вообще никогда не проиграется. А т.к. sou2=1 всегда, то при нажатии и держании кнопки мыши постоянно будет проигрываться звук нажатия .) Короче замкнутый круг.
(Offline)
 
Ответить с цитированием
Старый 07.08.2007, 14:39   #65
IGR
Blitz's Shame !!
 
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений
(для 2,013 пользователей)
Re: Анимация (и еще пару вопросов)

так чё, sou1 вообше не играет ??
(Offline)
 
Ответить с цитированием
Старый 07.08.2007, 16:42   #66
IGR
Blitz's Shame !!
 
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений
(для 2,013 пользователей)
Re: Анимация (и еще пару вопросов)

то при нажатии и держании кнопки мыши постоянно будет проигрываться звук нажатия
О !! Maestro, я нашел ошибочку: у тебя MHit=MouseDown(1) , а надо MHit=MouseHit(1) !!
(Offline)
 
Ответить с цитированием
Старый 07.08.2007, 17:09   #67
Maestro
ПроЭктировщик
 
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Анимация (и еще пару вопросов)

IGR, нет. я уже пытался поставить там MouseHit, но тогда нажимается только первая кнопка...
(Offline)
 
Ответить с цитированием
Старый 07.08.2007, 17:18   #68
IGR
Blitz's Shame !!
 
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений
(для 2,013 пользователей)
Re: Анимация (и еще пару вопросов)

IGR, нет. я уже пытался поставить там MouseHit, но тогда нажимается только первая кнопка...
дык тогда MHit обнулить попробуй !!
(Offline)
 
Ответить с цитированием
Старый 07.08.2007, 18:51   #69
Raiter
Гигант индустрии
 
Регистрация: 04.08.2006
Сообщений: 2,642
Написано 53 полезных сообщений
(для 92 пользователей)
Re: Анимация (и еще пару вопросов)

Ну народ я с вас фшокэ!

Поправил я твой пример. Добавил всего 2 переменные!

Sel - указывает на номер выделенной в данный момент кнопки
Sel2 - отвечает за последнюю нажатую кнопку

(Offline)
 
Ответить с цитированием
Старый 08.08.2007, 23:06   #70
Maestro
ПроЭктировщик
 
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Анимация (и еще пару вопросов)

Лазил тут по хелпу, нашел функцию ClearWorld. Она очищает все. А я до этого все удалял из памяти вручную FreeEntity, FreeImage, FreeTexture... или может у последних есть какие-то приемущества?
(Offline)
 
Ответить с цитированием
Старый 09.08.2007, 14:49   #71
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Re: Анимация (и еще пару вопросов)

Ну обычно быстрее удалить всё повыборочно, чтобы не грузить то что ещё будет использоваться, например в РПГ, интерфейс можно загрузить 1 раз, а вот модели для разных уровней разные. Это будет выйгришь большой во времени загрузки: Не предёться заного многое грузить, и например генерить заного кубемапу для бампа, ну и многое другое =)
(Offline)
 
Ответить с цитированием
Старый 09.08.2007, 18:44   #72
H@NON
Дэвелопер
 
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений
(для 774 пользователей)
Re: Анимация (и еще пару вопросов)

Выход: сделай функцию(-ии) где будешь удалять все что связано с одним уровнем. А лечше сделать функцию перехода с одного уроывня на другой(чтоб в ней было и удаление и вызов следующего уровня).
(Offline)
 
Ответить с цитированием
Старый 09.08.2007, 18:53   #73
Maestro
ПроЭктировщик
 
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Анимация (и еще пару вопросов)

H@NON, ну я так и сделал, просто при переходе с одного уровня на другой, и с другого на третий надо удалять не одинаковые объекты, поэтому одну функцию не применишь. Да и при выходе из игры надо все удалить... проще одной функцией это сделать, чем после добавления новых объектов править существующий ФриВесьМир .))
(Offline)
 
Ответить с цитированием
Старый 09.08.2007, 19:17   #74
H@NON
Дэвелопер
 
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений
(для 774 пользователей)
Re: Анимация (и еще пару вопросов)

Проще не значит лучше. Для каждого уровня делай свою функцию удаления, ну хотя если у тебя не больно сильно загружается память(скажем, меньше чем unreal turnament)), то можно и clearworld.
(Offline)
 
Ответить с цитированием
Старый 09.08.2007, 20:12   #75
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Re: Анимация (и еще пару вопросов)

Да и при выходе из игры надо все удалить
Ы?!
Заносишь все ресурсы в классы, и функция просто перебирает ресурсы, и требуемый загрузить файл, если в классе есть такой файл, возвращать файл из класса, если нету загружать этот файл и вписывать в класс. Затем всё помечаешь что были востребованы в уровне. И все те что не имеют метки востребованности удалять. Всё просто.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пару вопросов DIMMON4IK Основной форум 9 25.08.2009 18:53
Пару вопросов о 3ds max G.A.D 3D Моделирование 12 26.07.2009 22:41
Пару вопросов по Букам ЛысыЙ_Чук-Иванчук Болтовня 26 28.08.2007 21:33
Пару вопросов XpycT Blitz3D 6 14.11.2006 02:23


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


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