Форум: "Игры";
Текущий архив: 2004.01.05;
Скачать: [xml.tar.bz2];
ВнизЗвуковой движок игры Найти похожие ветки
← →
NailMan (2003-06-16 18:03) [0]Люди, а чем вы пользуетесь для сабжа?
Пишете свою обертку для DirectSound(3D) или юзаете левые обертки типа BASS?
Я вот сейчас думаю писать на чистом DSound3D, тоесть делать свою обертку с возможнстью ремапа на A3D 2.0.
Как вам такое? Пробовал кто-нить писать такой движок? Есть ли какие трудности с совмещением этих API?
← →
cyborg (2003-06-16 22:08) [1]Пока довольствуюсь FMOD, но уже заглядываюсь на DirectSound.
Что такое ремап?
← →
Omar2002 (2003-06-16 22:17) [2]Ну блин, закидали абривиатурами и терминами. :)
Почти ниче не понял.
← →
Плохой человек (2003-06-16 23:42) [3]>юзаете левые обертки типа BASS?
А чем плохо?
← →
NailMan (2003-06-17 10:47) [4]To -> cyborg ©
Что такое ремап?
Ну это когда делаешь описание функции:
PlaySound : Procedure (fn: String);
А в 2-х DLL описаны функции с описанием сProcedure PlaySound(fn: String);
, которые играют звук на разных API.
Типа цепляешь динамически нужную DLL при загрузке игры и ремаппишь на соответсвующую функцию в DLL:
hdll := LoadLibrary(pchar(fn));
PlaySound := GetProcAddress(hdll, "PlaySound");
Я так сделал математику, типа в UTMath_AMD.dll часто юзаемые функции математики(SIN, COS, VecNormalize, VecCross, SQRT) написаны на 3DNow!(стандартные мат.ф-ции взяты из 3dnow! SDK), а в UTMath_Generic.dll все эти функции написаны на обычных дельфевских аналогах.
Вот на таком принципе я и хочу сделать звуковой движок, только в DLL для A3D все будет на чистом A3D API, а вот с Generic-овым DSound-ом(если звуковуха не Vortex2) думаю - или реализовывать PlaySound через BASS или чего-то похожее(хотя он более приоритетен, так как юзаю пока его) или писать на чистом DSound3D, что кажется более грамотным, но и более геморным.
To -> Плохой человек
А чем плохо?
Обортка тем и плоха что иногда она становится очень неудобной, и собсно является более медленной, а иногда просто безбожно глюкает.
Вот к пример с BASS 1.6 у меня есть такой косяк - почему-то он не возвращает мне нормально его внутренний DirectSound-овый интерфейс, тоесть он его возвращает, но когда я с ним поработав делаю его :=nil;, то вылетает забавные AccessViolation и весь DirectSound откровенно валится медным тазиком до перезагрузки компа.
Вот я и хочу узнать и посоветоваться что лучше юзать или есть ли какие нормальные и функциональные обертки DSound3D, без всяких лишних предподвыподвертов.
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2004.01.05;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.013 c