|
3D-программирование Вопросы, касающиеся программирования 3D мира |
17.03.2009, 12:18
|
#1
|
Оператор ЭВМ
Регистрация: 10.11.2008
Сообщений: 29
Написано 0 полезных сообщений (для 0 пользователей)
|
Xors3D баг со звуком
Вот два однотипных кода : Первый для Blitz3d , Второй для Xors3d .
Первый работает как надо , а при запуске второго (Xors3d) глюк кокой-то
;№1
Type Music
Field FileName$
Field Sel
End Type
Graphics3D 1024,768,32,2
folder$="Music"
If FileType(folder$) = 2
musDir = ReadDir(folder$)
Repeat
musfile$=NextFile$(musDir)
If Right(musfile$,4)=".mp3" Or Right(musfile$,4)=".ogg"
m.Music = New Music
m\FileName = musfile$
EndIf
Until musfile$ = ""
CloseDir musDir
EndIf
m.Music = First Music
m\Sel=1
play=1
While Not KeyHit(1)
Flip
Cls
y=0
kL=KeyHit(208 )
kR=KeyHit(200)
sp=KeyHit(57)
If sp Then play=Not play
For m.Music = Each Music
y=y+1
If kL And m\Sel =1
m=After m
If m <> Null
m\Sel=1
StopChannel(chMus)
m=Before m
m\Sel=0
kL=0
EndIf
ElseIf kR And m\Sel =1
m=Before m
If m <> Null
m\Sel=1
StopChannel(chMus)
m=After m
m\Sel=0
EndIf
EndIf
If m <> Null
If m\Sel = 0
Color 255,255,255
Text 10,y*10,m\Filename
Else
Color 255,0,0
Text 10,y*10,m\Filename
EndIf
Else
Exit
EndIf
If play And m\Sel
chMus=PlayMusic(m\Filename)
EndIf
Next
Wend
End
;№2
Include "xors3d.bb"
Type Music
Field FileName$
Field Sel
End Type
xGraphics3d 1024,768,32,0
folder$="Music"
If FileType(folder$) = 2
musDir = ReadDir(folder$)
Repeat
musfile$=NextFile$(musDir)
If Right(musfile$,4)=".mp3" Or Right(musfile$,4)=".ogg"
m.Music = New Music
m\FileName = musfile$
EndIf
Until musfile$ = ""
CloseDir musDir
EndIf
m.Music = First Music
m\Sel=1
play=1
While Not xKeyHit(1)
xFlip
xCls
y=0
kL=xKeyHit(208 )
kR=xKeyHit(200 )
sp=xKeyHit(57)
If sp Then play=Not play
For m.Music = Each Music
y=y+1
If kL And m\Sel =1
m=After m
If m <> Null
m\Sel=1
xStopChannel(chMus)
m=Before m
m\Sel=0
kL=0
EndIf
ElseIf kR And m\Sel =1
m=Before m
If m <> Null
m\Sel=1
xStopChannel(chMus)
m=After m
m\Sel=0
EndIf
EndIf
If m <> Null
If m\Sel = 0
xColor 255,255,255
xText 10,y*10,m\Filename
Else
xColor 255,0,0
xText 10,y*10,m\Filename
EndIf
Else
Exit
EndIf
If play And m\Sel
chMus=xPlayMusic(m\Filename)
EndIf
Next
Wend
End
|
__________________
===================
===================
Последний раз редактировалось Максим, 17.03.2009 в 12:20.
Причина: Смайл *
|
(Offline)
|
|
17.03.2009, 12:42
|
#2
|
Злобный Админ
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений (для 9,330 пользователей)
|
Ответ: Xors3D баг со звуком
А что за глюк то?
Опишите проблему подробнее, телепатов нет.
__________________
|
(Offline)
|
|
17.03.2009, 12:59
|
#3
|
Оператор ЭВМ
Регистрация: 10.11.2008
Сообщений: 29
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Xors3D баг со звуком
Звук коряво играет ,кокое-то искажение , и на нажатие клавиш (200 , 208 , 57 ) никак не реагирует .
__________________
===================
===================
|
(Offline)
|
|
17.03.2009, 15:28
|
#4
|
Злобный Админ
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений (для 9,330 пользователей)
|
Ответ: Xors3D баг со звуком
Насчёт клавиш в ксорсе могут быть свои коды клавиш не как в блитз3д.
А так же проверь не запускаешь ли последовательно музон несколько раз поновой...
В ксорсе используется шквал, а он может играть более одной музыки за раз.
Возможно ты в цикле стартуешь новые копии музыки..и они накладываясь смешиваются.
__________________
|
(Offline)
|
|
17.03.2009, 16:22
|
#5
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: Xors3D баг со звуком
делай примеры проще. обрезай этот, пока в нём не останутся только те строчки, результат которых отличается.
потом, бывает, и сам догадываешься в чём проблема)
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо Mr_F_ за это полезное сообщение:
|
|
17.03.2009, 16:33
|
#6
|
Оператор ЭВМ
Регистрация: 10.11.2008
Сообщений: 29
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Xors3D баг со звуком
Все разобрался вот код =)
Include "xors3d.bb"
Type Music
Field FileName$
Field Sel
End Type
xGraphics3d 1024,768,32,0
folder$="Music\"
If FileType(folder$) = 2
musDir = ReadDir(folder$)
Repeat
musfile$ = NextFile(musDir)
If FileType(folde$+musfile) = 1 Then
F$ = Lower(Right(musfile,4))
If F=".raw" Or F=".mod" Or F=".s3m" Or F=".mid" Or F=".rmi" Or F=".wav" Or F=".mp2" Or F=".mp3" Or F=".ogg" Or F=".wma" Or F=".asf"
m.Music = New Music
m\Filename = folder$+musfile
EndIf
EndIf
Until musfile = ""
CloseDir musDir
EndIf
m.Music = First Music
m\Sel=1
play=1
playmus=1
While Not xKeyHit(1)
xFlip
xCls
y=0
kL=xKeyHit(20
kR=xKeyHit(200)
If xKeyHit(57)
play=Not play
playmus=1
EndIf
For m.Music = Each Music
y=y+1
If kL And m\Sel =1 And playmus=0
m=After m
If m <> Null
m\Sel=1
xStopChannel(chMus)
m=Before m
m\Sel=0
kL=0
EndIf
ElseIf kR And m\Sel =1 And playmus=0
m=Before m
If m <> Null
m\Sel=1
xStopChannel(chMus)
m=After m
m\Sel=0
EndIf
EndIf
If m <> Null
If m\Sel = 0
xColor 255,255,255
xText 10,y*10,m\Filename
Else
xColor 255,0,0
xText 10,y*10,m\Filename
EndIf
Else
Exit
EndIf
If play And m\Sel And playmus=1
chMus=xPlayMusic(m\Filename)
playmus=0
EndIf
Next
Wend
End
|
__________________
===================
===================
|
(Offline)
|
|
17.03.2009, 19:08
|
#7
|
Гигант индустрии
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений (для 4,437 пользователей)
|
Ответ: Xors3D баг со звуком
Squall - говно
или ждать пока ксорс переведут на другой звук, или самому что то подрубать
__________________
|
(Offline)
|
|
17.03.2009, 19:18
|
#8
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Xors3D баг со звуком
зато бесплатно!
tormoz, а какие ты еще знаешь халявные звуковые движки?
|
(Offline)
|
|
17.03.2009, 19:23
|
#9
|
Злобный Админ
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений (для 9,330 пользователей)
|
Ответ: Xors3D баг со звуком
тормоз, при всём уважении, почему говно? Отлично работает.
__________________
|
(Offline)
|
|
17.03.2009, 19:28
|
#10
|
|
Ответ: Xors3D баг со звуком
у меня squall отлично работает,
идинственое что нету 64-битной версии
|
|
|
17.03.2009, 21:12
|
#11
|
Гигант индустрии
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений (для 4,437 пользователей)
|
Ответ: Xors3D баг со звуком
конкретно в ксорсе он работает отвратительно
возможно, криво подключен
когда переводил проект с блитца в ксорс - пришлось половину звуков отключить
тупо вылетало, без всякой видимой причины.
Листенер вообще ужастный - какое-то квакание вместо нормального звука
__________________
|
(Offline)
|
|
18.03.2009, 13:42
|
#12
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: Xors3D баг со звуком
я подключил BASS и рад.
стоит он всего 100 евро, можно и позволить.
хотя ваще врапанул бы кто-нибудь OpenAL.
|
(Offline)
|
|
18.03.2009, 14:06
|
#13
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Xors3D баг со звуком
OpenAL это слишком уж низкоуровневое АПИ. Прийдется еще врапать что то вроде ogg vorbis, чтобы хотябы файлы можно было проигрывать, а не только последовательности байтов.
|
(Offline)
|
|
18.03.2009, 23:50
|
#14
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Xors3D баг со звуком
Подрубать OpenAL - не рационально, т.к. писать звуковой движок на том же Blitz3D ну это уже совсем не дело. По мне так приятнее иметь готовое, дабы нормально приступать к основной задаче не забивая голову лишней инфой.
Советую Bass (Mr_F_ прав), иль FMod (который будет помощнее имхо, да и юзается многими лидерами игровой индустрии). Свобода там ух какая, а функционал такой, что и 20% юзать не будете. И вам доступ к оутпуту компа, инпуту, отличный 3д, (с 5.1 хз как, вроде фурычит). Работа с почти любыми известными как loss'es форматами, так и самловыми (midi/mod и т.д.). Можно и самому писать звуки цифровым способом. Эффекты, всякие эхо там и много чего динамичного - эта тема кластная, стоит вспомнить звук в HL2 . Доступ к любой инфе от текущего звука, вплоть до получения всего частотного пектра - штука для демосценок просто незаменимая! И ещё уйма чего, уже не помню всего..
ЗЫ, Squall - норма для простенького, для серьёзного не подойдёт имхо.
|
(Offline)
|
|
19.03.2009, 01:13
|
#15
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений (для 15,675 пользователей)
|
Ответ: Xors3D баг со звуком
fmod стоит... дороже всего остального инструментария вместе взятого
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 11:19.
|