|
3D-программирование Вопросы, касающиеся программирования 3D мира |
05.08.2007, 17:21
|
#46
|
|
Re: Анимация (и еще пару вопросов)
Maestro
millisecs() ето просто таймер, он работает все время никогда не обнуляется
к примеру :
в начале проги пишем
ms = millisecs()
...
в цикле
work = Millisecs() - ms
print "programm work time : "+work
...
|
|
|
05.08.2007, 17:23
|
#47
|
Танчики Developer
Регистрация: 29.01.2007
Сообщений: 539
Написано 16 полезных сообщений (для 23 пользователей)
|
Re: Анимация (и еще пару вопросов)
jimon, не он обнуляется иногда.)
|
(Offline)
|
|
05.08.2007, 18:02
|
#48
|
ПроЭктировщик
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Анимация (и еще пару вопросов)
Гм. странные она значения принимает.
Скопируйте это в блиц:
While Not KeyHit(1)
Print MilliSecs()
Wend
Там какие-то гиганские цыферки получаются... почему он не с нуля считает?
|
(Offline)
|
|
05.08.2007, 18:09
|
#49
|
|
Re: Анимация (и еще пару вопросов)
Maestro
оно начинает с нуля ... когда винда стартует (поидее)
хотя фиг его знает что собсно оно щитает
ps. из справки модуля blitzmax'а :
"Get millisecond counter
Returns: Milliseconds since computer turned on."
так что оно возвращает количество милисек со времени врубления компа
|
|
|
05.08.2007, 18:46
|
#50
|
ПроЭктировщик
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Анимация (и еще пару вопросов)
Гыыы. у меня за миллиард перевалило .)))
может ты знаешь как решить одну проблемку?
Короче проблема у меня со взрывом. Надо чтобы при столкновении корабль изчезал, проигрывался взрыв, потом корабль оживал... впринципе я все это сделал, НО единственнй способ, которым я смог сделать взрыв - это постоянно проигрывать анимтекстуры на модели, а саму модель при столкновении показывать, и при окончании кадров в ленте (некстуре) опять прятать... поэтому при столкновении анимация проигрывается не с начала, а как захочет...
Может можно как-то подругому сделать... или этот способ модфицировать...
|
(Offline)
|
|
05.08.2007, 19:30
|
#51
|
Танчики Developer
Регистрация: 29.01.2007
Сообщений: 539
Написано 16 полезных сообщений (для 23 пользователей)
|
Re: Анимация (и еще пару вопросов)
1000000000/1000 = 1000000 секунд
1000000/3600 = 277 часов
277/24 = 11,5 суток
тоесть у тя полторы недели комп включен.
вывод: ты гонишь. или команда показывает не "количество милисек со времени врубления компа"
|
(Offline)
|
|
05.08.2007, 19:44
|
#52
|
Бывалый
Регистрация: 29.03.2007
Сообщений: 662
Написано 199 полезных сообщений (для 448 пользователей)
|
Re: Анимация (и еще пару вопросов)
Сообщение от Leito
1000000000/1000 = 1000000 секунд
1000000/3600 = 277 часов
277/24 = 11,5 суток
тоесть у тя полторы недели комп включен.
вывод: ты гонишь. или команда показывает не "количество милисек со времени врубления компа"
|
Ну почему гонишь - у меня комп уже около трех недель включенный стоит
|
(Offline)
|
|
05.08.2007, 20:39
|
#53
|
ПроЭктировщик
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений (для 0 пользователей)
|
Leito, упс. обсчитался. не миллиард, а 100 миллионов .))
Фух. Со взрывом разобрался. Так что если кто-то хотел помочь, обломитесь .) сам сделал.) Как только будут звуки вылажу демку (правда она отличается от прошлой практически только внешним видом )
|
(Offline)
|
|
06.08.2007, 00:49
|
#54
|
Танчики Developer
Регистрация: 29.01.2007
Сообщений: 539
Написано 16 полезных сообщений (для 23 пользователей)
|
Re: Анимация (и еще пару вопросов)
LaZZZeR, рекорд! Millisecs()=2 милиарда!
довайте соревнование устроим! по времени включения компа))
причем не перезагружая его!
|
(Offline)
|
|
06.08.2007, 01:05
|
#55
|
ПроЭктировщик
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Анимация (и еще пару вопросов)
Leito, ага. только подтверждать скриншотом...
|
(Offline)
|
|
06.08.2007, 23:30
|
#56
|
ПроЭктировщик
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Анимация (и еще пару вопросов)
Вот наконец добрался до звуков... что-то у меня не получается с первым же звуком. Проблема вот в чем: надо, чтобы при навидении на кнопку проигрывался один звук, при нажатии другой... ну короче все как положено. Но не могу реализовать. У меня есть функция для кнопки:
Function RefreshButton(ImBtn,x,y,txt$,n)
mx=MouseX(): my=MouseY()
MHit=MouseDown(1)
If RectsOverlap(x,y,ImageWidth(ImBtn),ImageHeight(ImBtn),mx,my,1,1) Then
f=1
y2=0
If MHit=True Then
f=2
y2=2
Button(n)=1
EndIf
Else
f=0
y2=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(ImBtn)-4-FontHeight())+y2,txt$
End Function
Не могу сделать все как положено. Либо (если просто плейсаунд) при навидении на кнопку постоянно проигрывается звук. Либо (добавив пару монипуляций) проигравается только один раз... Я пытался сделать вот так:
Function RefreshButton(ImBtn,x,y,txt$,n)
mx=MouseX(): my=MouseY()
MHit=MouseDown(1)
If RectsOverlap(x,y,ImageWidth(ImBtn),ImageHeight(ImBtn),mx,my,1,1) Then
If sou=1 Then
PlaySound SelectBut
sou=0
EndIf
f=1
y2=0
If MHit=True Then
If sou=0 Then
PlaySound ClickBut
sou=1
EndIf
f=2
y2=2
Button(n)=1
EndIf
Else
sou=1
f=0
y2=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(ImBtn)-4-FontHeight())+y2,txt$
End Function
поидее строчка sou=1 должна выполняться только когда мышь не наведена на кнопку, но выполняется все время, и звук воспроизводится постоянно .(
ЗЫ: и почему не грузятся шрифты в названии которых присутствует "_"?
|
(Offline)
|
|
07.08.2007, 12:40
|
#57
|
Blitz's Shame !!
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений (для 2,013 пользователей)
|
Re: Анимация (и еще пару вопросов)
поидее строчка sou=1 должна выполняться только когда мышь не наведена на кнопку, но выполняется все время, и звук воспроизводится постоянно .(
|
ты попробуй sou=0 т.е. звук не будет играть !!
|
(Offline)
|
|
07.08.2007, 13:20
|
#58
|
ПроЭктировщик
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Анимация (и еще пару вопросов)
IGR, ыы. если ставить sou=0, при наведении курсора на кнопку вообще не будит никаких звуков, а при нажатии на кнопку (если не отпускать ЛКМ) звук проигрывается вечно.
А нет команды типа MouseDown(1), только чтобы проверялось не нажатие, а отжатие после нажатия?
|
(Offline)
|
|
07.08.2007, 13:28
|
#59
|
Blitz's Shame !!
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений (для 2,013 пользователей)
|
Re: Анимация (и еще пару вопросов)
тогда зделай две переменных для звуков sou1 , sou2 !!
и попробуй так :
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
f=1
y2=0
If MHit=True
sou2=1
f=2
y2=2
Button(n)=1
EndIf
Else
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, 13:38
|
#60
|
ПроЭктировщик
Регистрация: 25.07.2007
Сообщений: 151
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Анимация (и еще пару вопросов)
Да нет. я так тоже пытался. Смотри. Мы пишем
If sou1=1 Then
PlaySound SelectBut
sou1=0
EndIf
Но тут же проверяем, наведен ли курсор на кнопку, получаем положительный ответ, и...
If RectsOverlap(x,y,ImageWidth(ImBtn),ImageHeight(ImB tn),mx,my,1,1)
sou1=1
f=1
...
Следовательно звук каждый раз и проигрывается.
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 08:41.
|