Jak rysować tekstury. Bądź kreatywny dzięki teksturom

11.04.2019

Environmental Audio (dosłownie dźwięk przestrzenny) to nowy standard dźwięku opracowany przez Creative Labs, który tworzy efekty środowisko realny świat na komputerze. Środowiskowy dźwięk to dziś znacznie więcej niż tylko dźwięk przestrzenny i modelowanie 3D. To prawdziwe modelowanie otoczenia z potężnymi efektami opartymi na wielkości pomieszczenia, cechach dźwiękowych, pogłosie, echu i wielu innych efektach, które tworzą wrażenie prawdziwego świata audio.

Jak działa dźwięk środowiskowy

Efekty środowiskowe są modelowane przy użyciu technologii E-mu Environmental Modeling, obsługiwanej przez procesor dźwięku EMU10K1 zainstalowany w SBLive! Technologia Environmental Audio jest przeznaczona do współpracy ze słuchawkami, dwoma lub czterema głośnikami. Układ EMU10K1 rozkłada dowolny strumień audio na wiele kanałów, na których stosuje efekty w czasie rzeczywistym. Dzięki temu powstają już nowe dźwięki, takie jakie powinny być w naturze. Na etapie przetwarzania dźwięku, oprócz jego położenia w przestrzeni, należy wziąć pod uwagę co najmniej dwa czynniki: wielkość pomieszczenia oraz pogłos, ponieważ ucho ludzkie słyszy nie tylko dźwięk oryginalny, ale także dźwięk uwzględniający odległość konta, lokalizacja i objętość. Standard Environmental Audio obsługuje wszystkie te warunki, aby uzyskać prawdziwy dźwięk wysokiej jakości.

Environmental Audio wykorzystuje współrzędne X, Y, Z, a także pogłos i odbicia dźwięku. Te współrzędne są używane w podstawowym przygotowaniu kanałów źródłowych audio i efektów „kolorowych” sceny dźwiękowej. Główna moc procesora dźwięku jest zużywana na przetwarzanie każdego źródła dźwięku na wszystkich kanałach i dodawanie efektów w czasie rzeczywistym. Jak już wspomniano, aby stworzyć wrażenie prawdziwego dźwięku, należy wziąć pod uwagę co najmniej 3 czynniki: odległość od źródła dźwięku, wielkość pomieszczenia dźwiękowego i pogłos.

Środowiskowe rozszerzenia audio (EAX)

Jest to interfejs API opracowany przez Creative Labs w celu uzyskania prawdziwych efektów dźwiękowych w grach komputerowych. EAX to rozszerzenie API DirectSound3D firmy Microsoft. Od 18 października 1999 jedyną kartą dźwiękową obsługującą ten standard jest Sound Blaster Live! (w różnych modyfikacjach). Do tej pory firma Creative wydała trzy wersje tego standardu.

DirectSound3D kontroluje lokalizację źródeł dźwięku i słuchacza w przestrzeni 3D gry. Na przykład gra może wykorzystywać DirectSound3D do tworzenia oddzielnych źródeł dźwięku dla każdego stworzenia w grze, dzięki czemu uzyskuje się strzały i głosy w różne miejscaświat 3D. Dźwięki te, podobnie jak słuchacz, mogą poruszać się w przestrzeni. Twórcy gier mogą korzystać z funkcji audio, takich jak paleta kierunkowa (dźwięk w jednym kierunku może być głośniejszy niż w innym), efekt Dopplera (dźwięk może się unosić, gdy dociera do słuchacza, a następnie opadać, jakby oddalał się w przestrzeni).

EAX ulepsza DirectSound3D, tworząc wirtualne środowisko audio wokół źródeł dźwięku i słuchacza. Technologia ta emuluje pogłos i odbicia dochodzące ze wszystkich kierunków słuchacza. Efekty te stwarzają wrażenie, że wokół słuchacza istnieje realny świat o własnych parametrach, takich jak: wielkość pomieszczenia, właściwości odbijające i pochłaniające ścian i inne. Programiści gier mogą tworzyć różne efekty akustyczne dla różnych pomieszczeń. W ten sposób gracz grający w grę EAX może usłyszeć różnicę w dźwięku podczas przechodzenia z korytarza do jaskini. Oprócz tworzenia efektów otoczenia, EAX 1.0 może zmieniać parametry różnych źródeł dźwięku. Gdy zmienisz położenie źródła dźwięku względem słuchacza, automatycznie zmienią się parametry pogłosu.

Jeśli chodzi o programowanie, tutaj EAX zapewnia następujące funkcje.

    - Wybór spośród dużej liczby „ustawień wstępnych” do symulacji wpływu środowiska.
    - Możliwość zmiany parametrów ustawień otoczenia dla każdego źródła indywidualnie.
    - Automatyczna zmiana parametrów krytycznych zastosowanych do stanowiska. Gdy źródło dźwięku zbliża się do słuchacza, EAX automatycznie zmienia ustawienia odbicia dźwięku i pogłosu, aby stworzyć bardziej realistyczne efekty dźwiękowe, gdy źródło dźwięku porusza się w świecie dźwięku 3D.
Okluzje i przeszkody

Efekt okluzji sprawia wrażenie, że źródło dźwięku znajduje się w innym pomieszczeniu, w innym miejscu, za ścianą. Właściwość ta pozwala na zmianę parametrów transmisji charakterystyki dźwięku w celu uzyskania efektu różnych materiałów ścian i ich grubości. Na przykład program może użyć tej właściwości do stworzenia dźwięku dochodzącego zza drzwi lub zza ściany.

Efekt przeszkód pozwala symulować dźwiękowe przeszkody, sprawiając wrażenie, że źródło dźwięku znajduje się w tym samym pomieszczeniu, ale za przeszkodą. Na przykład możesz sprawić, by dźwięk wydobywał się zza dużej skały znajdującej się w tej samej jaskini co słuchacz.

Modelowanie geometryczne i EAX

Geometryczny model sceny służy zarówno do celów graficznych, jak i do tworzenia dźwięku 3D. Aby stworzyć model geometryczny, komputer musi mieć dane o fizycznych właściwościach świata: gdzie znajdują się obiekty, które są dźwiękoszczelne, które pochłaniają dźwięk i tak dalej. Po uzyskaniu tych informacji oblicza się pewną liczbę słyszalnych odbić i pochłaniania dźwięku od tych obiektów dla każdego źródła dźwięku. Powoduje to tłumienie dźwięku z powodu przeszkód, dźwiękoszczelnych ścian itp. Obliczenia odbicia metodą „lustrzaną” są szeroko stosowane do tworzenia akustyki budynków. Ta metoda oznacza, że ​​dźwięk odbija się bezpośrednio (jak od lustra) bez załamania lub absorpcji. W rzeczywistości zamiast obliczania wszystkich odbić i cech otoczenia w czasie rzeczywistym (co w rzeczywistości jest pracochłonnym procesem), używane są wstępnie obliczone uproszczone modele geometrycznych środowisk dźwiękowych, które różnią się od graficznych reprezentacji środowiska. Oznacza to, że gra jednocześnie korzysta z osobnego środowiska efekty wizualne i prostsze dla efektów dźwiękowych. Stwarza to problemy, na przykład jeśli chcesz przesunąć część ściany w pokoju, musisz stworzyć nowe środowisko dźwiękowe. Obecnie w wielu laboratoriach dźwiękowych trwają prace nad geometrycznym modelowaniem dźwięku.

EAX dla programistów

EAX nie wymaga powiązania źródeł dźwięku z graficzną reprezentacją otoczenia. Ale w razie potrzeby programista, który chce stworzyć efekty dźwiękowe „podwyższonej rzeczywistości”, które są jak najbardziej zbliżone do graficznej reprezentacji sceny, może zastosować dodatkową kontrolę nad wczesnymi odbiciami, załamaniami i absorpcjami. Tworząc swoje efekty, EAX wykorzystuje statyczne modele otoczenia, a nie jego parametry geometryczne. Modele te automatycznie obliczają pogłos i odbicia w stosunku do słuchacza, biorąc pod uwagę wielkość pomieszczenia, kierunek dźwięku i inne parametry, które programista może dodać dla każdego źródła dźwięku. Dlatego EAX jest znacznie prostszy niż inne standardy, ponieważ nie wymaga opisu geometrycznego środowiska sceny, ale wykorzystuje przygotowane wcześniej modele. Gra może zmieniać wzorce dźwiękowe podczas przemieszczania się z jednego miejsca do drugiego, aby stworzyć prawdziwe efekty. Chcę się temu przyjrzeć bliżej. Załóżmy, że masz scenę w grze w postaci kamiennej jaskini. Istnieją dwa sposoby, aby się wznieść realistyczne efekty. Pierwszym z nich jest obliczenie modelu geometrycznego i użycie go jako maski dźwiękowej dla sceny, a nowe technologie pozwolą to zrobić w czasie rzeczywistym. Drugim sposobem jest wzięcie gotowego presetu iw razie potrzeby zmiana go w celu uzyskania lepszych efektów. Oczywiście pierwszy sposób da większy realizm niż drugi, ale wyda też kilka razy więcej zasobów. A jeśli wziąć pod uwagę lenistwo programistów, to w tym przypadku EAX jest najkorzystniejszą opcją.

Różnice między EAX 1.0, 2.0 i 3.0

EAX 1.0

    - Obsługuje zmianę miejsca w grze pogłosów i odbić.
    - Ma dużą liczbę ustawień wstępnych.
    - Umożliwia (ograniczoną) modyfikację pogłosu otoczenia.
    - Pozwala na automatyczną zmianę intensywności pogłosu w zależności od położenia źródła dźwięku względem słuchacza.
EAX 1.0 buduje scenę dźwiękową w oparciu o gotowe presety, uwzględniając odległość między źródłami dźwięku a słuchaczem. W związku z tym EAX 1.0 zapewnia duży zestaw ustawień „na każdą okazję”. Możliwa jest również zmiana parametrów późnego pogłosu (wyciszenie, poziom) oraz automatyczna zmiana poziomu w zależności od odległości. Powoduje to lepsze postrzeganie odległości do źródła.

EAX 2.0

    - Zaktualizowano model pogłosu.
    - Dodano efekty barier dźwiękowych (Przeszkody) i absorpcji (Okluzje).
    - Oddzielna kontrola wczesnych odbić i późnych pogłosów. Wieloletnia kontrola wymiarów lokalu. Ulepszony model odległości do automatycznego sterowania pogłosami i początkowymi odbiciami w oparciu o lokalizację źródła dźwięku względem słuchacza.
    - Umiejętność uwzględnienia właściwości akustycznych powietrza (pochłanianie dźwięku).
    - Teraz, aby skorzystać z efektów Environmental Audio nie wymaga opisu geometrii pomieszczenia.
EAX 2.0 opiera się na funkcjach pierwszej wersji i tworzy jeszcze bardziej realistyczne efekty, wspierając okluzję i odbicie dźwięku, a także ulepszoną technologię wykrywania kierunku dźwięku.

EAX 3.0
    - Kontrola wczesnych pogłosów i odbić dla każdego źródła dźwięku.
    - Dynamiczne przejście między otaczającymi modelami.
    - Ulepszony model odległości do automatycznego sterowania pogłosem i początkowymi odbiciami w zależności od położenia źródeł dźwięku względem słuchacza.
    - Obliczenia Ray-Tracing (odbicia promieni) w celu uzyskania parametrów odbicia dla każdego źródła dźwięku.
    - Oddzielne odbicia dla odległych ech.
    - Ulepszona reprezentacja odległości zaprojektowana w celu zastąpienia statycznych modeli pogłosu.
EAX 3.0 łączy drugą wersję z potężniejszymi funkcjami. Nowy poziom realizm osiąga się poprzez wspieranie lokalnych odbić, pojedynczych odbić, długich przejść między scenami dźwiękowymi i innych cech.
  • Wniosek:

    Na podstawie powyższego można stwierdzić, że dzisiaj EAX jest bardzo obiecującym i konkurencyjnym standardem. Każdy programista, który nie jest zaznajomiony z funkcjami dźwięku 3D, będzie mógł tworzyć prawdziwe efekty w swoich grach za pomocą ustawień wstępnych. Jeśli chodzi o jakość dźwięku 3D, to jest bezkonkurencyjna.

w sierpniu 2005.

Jest też opis wersji https://ru.wikipedia.org/wiki/Environmental_Audio_Extensions

Poniżej znajduje się tabela gier komputerowych, których silniki dźwiękowe wykorzystują technologię Environmental Audio eXtensions.

Od ta lista gry, które mogę wyróżnić: Obcy kontra Predator, Władca Pierścieni: Bitwa o Śródziemie II, bioszok, wezwanie do służby 2, Kroniki Riddicka: Ucieczka z Butcher Bay Diablo 2, Doom 3(łatka 1.3 dodała obsługę EAX 4) , STRACH.(EAX4) Far Cry, Grand Theft Auto 3, Grand Theft Auto: Vice City, Grand Theft Auto: San Andreas,Grand Theft Auto4, PRZEŚLADOWCA. wszystkie części (EAX działa przez OpenAL. Nie używaj ALchemy.), Pół życia 2, Kierowca, Kierowca: Linie równoległe, Hitman 2: Cichy zabójca, Hitman: Krwawa forsa, Max Payne 2, Tom Clancy's Splinter Cell, Unreal, Unreal Tournament 2003 i 2004, Warcraft III, Stubbs the Zombie, The Matrix: Path of Neo (google to: Opcja EAX w INI. Użyj ALchemii), Ofiara, Wstrząs 4(EAX 4, EAX 5 przez OpenAL), Wyrzutek , Skazany(EAX 2.0, EAX Advanced HD), Mafia, Need for speed 3 i High Stakes, SWAT 4(W przypadku EAX wymaga użycia Creative Alchemy. Należy również edytować Swat4.ini i ustawić następujące parametry na true: UseEAX i Use3DSound).

Natywna obsługa EAX w kartach jest zaimplementowana tylko w systemie Windows XP, Ponieważ akceleracja sprzętowa DirectSound i DirectSound3D nie jest już obsługiwana wWindows Vista dlatego w przypadku tego systemu operacyjnego i starszych należy skorzystać z pomocy narzędzia Creative ALchemy innej firmy.

Pobierz Creative ALchemy z biura. strona:

Więcej o narzędziu:


Czym jest alchemia?
Jest to narzędzie, które wykonuje dwie wzajemnie wykluczające się funkcje:
1. Translator API z wywołań DirectSound3D (DS3D) na wywołania OpenAL.
2. Silnik oprogramowania audio 3D, który rozumie wywołania DS3D.

Dlaczego to?
Faktem jest, że Microsoft poważnie przeprojektował stos audio w Windows Vista. Zrobiono to z jakiegoś powodu, nadszedł czas, aby wiele zmienić. Jednak część starych interfejsów API ucierpiała podczas tej przeróbki, które są teraz emulowane tylko przez nowy WASAPI. Dla użytkownika końcowego najbardziej zauważalną stratą jest niezdolność programów korzystających z DS3D do „rozmowy” bezpośrednio ze sterownikiem audio. Co z kolei pozbawia użytkownika takich aplikacji dźwięku 3D i obsługi dowolnej wersji EAX. Oczywiście stanowi to największy problem dla kart Creative. Dlatego wydano ALchemy.

Czy te funkcje Vista są specyficzne dla DS3D?
Tak. Nie dotyczy to aplikacji korzystających z interfejsów API innych niż MS. Tych. gry z OpenAL nadal działają tak, jak w poprzednich wersjach systemu Windows.

A co z Windowsem Seven?
Jeśli chodzi o DS3D, Seven nie różni się od Visty.

Jakie są wymagania dla ALchemii?
ALchemy działa tylko z kartami Creative Audigy/X-Fi. Nie ma innych ograniczeń.

Jak to działa?
Biblioteka dsound.dll oraz plik konfiguracyjny dsound.ini są umieszczane w folderze aplikacji (można to zrobić ręcznie lub poprzez powłokę graficzną). Dlatego przede wszystkim aplikacje szukają plików dll w swoim folderze, a dopiero potem zaglądają do folderów systemu operacyjnego, wtedy ten dsound.dll (który jest bezpośrednio samym ALchemy) ma pierwszeństwo przed „prawdziwym” dsound.dll od Microsoftu . Tym samym wszelkie wywołania aplikacji do DS3D są przetwarzane przez ALchemy, a nie przez mechanizmy wbudowane w Windows.

Jak to wpływa na szybkość pracy?
W większości przypadków prędkość odpowiada opcji „Windows XP bez ALchemy”. Na kartach z APU/Audio Processing Unit (tj. wszystkie starsze modele Audigy/X-Fi) ALchemy praktycznie nie obciąża procesora, ponieważ nie wykonuje żadnych obliczeń, ale po prostu tłumaczy polecenia. W rzadkich przypadkach możliwe jest nawet niewielkie przyspieszenie dzięki większej optymalizacji sterownika dla OpenAL. Jeśli nie ma APU lub X-Fi nie jest w trybie gry, ALchemy używa wbudowanego silnika dźwięku 3D. Ten silnik oprogramowania ma te same funkcje, algorytmy i dźwięk, co wbudowany sterownik X-Fi XtremeAudio.

Okazuje się, że podczas korzystania z ALchemy ma sens przełączanie kart X-Fi w tryb gry tylko ze względu na szybkość?
Zupełnie nie. Algorytmy oprogramowania XtremeAudio są zauważalnie gorsze pod względem jakości dźwięku od algorytmów działających na APU.

Czy muszę to zastosować do wszystkich moich gier, czy tylko tych z EAX?
Moim zdaniem ALchemia powinna być stosowana we wszystkich grach korzystających z DS3D. Miksowanie oprogramowania wbudowanego w Vistę jest bardzo słabej jakości w porównaniu z tym, co produkują jakiekolwiek karty Creative. Poza tym bez ALchemy poprawny wielokanałowy dźwięk często nawet nie działa, nie mówiąc już o pozycjonowaniu w słuchawkach czy parze stereo.

A jak ustalić, czy gra korzysta z samego OpenAL i bez Alchemii?
Najprostszą i najskuteczniejszą metodą jest po prostu wyszukanie w Google "<название игры>OpenAL”. Możesz także sprawdzić obecność pliku OpenAL32.dll w folderze gry (nie jest to konieczne, ale zwykle ten plik jest obecny).

Przewodnik po działaniu
Zwykle ALchemy jest już dostarczane na płycie CD z kartą. Można go również pobrać z ten link . Po zainstalowaniu i uruchomieniu powłoki graficznej można zaobserwować następujący obraz:

Jeśli masz szczęście, wszystkie zainstalowane gry zostaną wyświetlone na liście po lewej stronie. W takim przypadku wystarczy wybrać ten, którego potrzebujesz i kliknąć przycisk „>>”. Jednak powłoka graficzna może wyszukiwać bardzo ograniczoną liczbę gier. Dlatego w większości przypadków gry będą musiały być dodawane ręcznie. Aby to zrobić, kliknij „Dodaj” i zobaczymy kolejny ekran:

Musimy to wypełnić.
"Tytuł gry" - nazwa gry, możesz tu wpisać cokolwiek.
Przełącznik „Użyj ścieżki rejestru” / „Użyj ścieżki gry” wybiera rodzaj wyszukiwania lokalizacji gry, przez rejestr (wtedy trzeba wprowadzić klucz rejestru, który zawiera ścieżkę do gry) lub po prostu pełną ścieżkę do folderu. Polecam skorzystać z prostszego sposobu - bez majstrowania przy rejestrze wystarczy wpisać ścieżkę do gry. Aby to zrobić, znajdź folder z grą w Eksploratorze (najłatwiej to zrobić za pomocą elementu „Otwórz lokalizację przechowywania plików” w menu kontekstowym skrótu), wybierz ścieżkę do niego u góry okna Eksploratora

i skopiuj go do schowka, a następnie wklej do okna ALchemy.
Pole wyboru „Zainstaluj w podfolderze” umożliwia określenie lokalizacji pliku exe gry w folderze tej gry. Na przykład w 32-bitowej wersji Crysis plik exe znajduje się w podfolderze Bin32 (a zatem Bin32 należy wpisać w polu pod tym polem wyboru). Ale w Fallout 3 plik exe znajduje się bezpośrednio w głównym folderze gry (dlatego nie musisz w ogóle zaznaczać tego pola). Jeszcze bardziej złożony (ale prawie pojedynczy) przykład: CnC3 ma prawdziwy plik exe w podfolderze RetailExe\<версия установленного патча>i generalnie ma rozszerzenie dat zamiast exe.
Pole wyboru „Zainstaluj zarówno w folderach głównych, jak i podfolderach” umożliwia zainstalowanie ALchemy w dwóch folderach jednocześnie - głównym i powyższym podfolderze. Jest to konieczne w przypadku tych rzadkich gier, które mają kilka plików exe (na przykład jeden dla ustawień, a drugi dla samej gry) i leżą w różnych miejscach.
Pozostałe parametry („Bufory”, „Czas trwania”, „Maksymalna liczba głosów”, „Wyłącz DirectMusic”) należy zasadniczo pozostawić bez zmian. Chociaż w niektórych grach bufory i czas trwania wymagają ulepszenia, aby rozwiązać problemy. Zobacz poniżej, aby uzyskać szczegółowe informacje.
Po skonfigurowaniu wszystkiego musisz kliknąć „OK”, wybrać właśnie dodaną grę i kliknąć „>>”.

Jak zrozumieć, że wszystko działa
1. Ze słuchu.
2. Poprzez aktywowane opcje w grze (jeśli istnieją).
3. Przez plik dsoundlog.txt, który jest tworzony w folderze z grą (jeśli gra jest zainstalowana w podfolderze Program Files, to z włączoną funkcją UAC, zwykle trafia do C:\Users[Users]\<имя пользователя>\AppData\Local\VirtualStore\<реальный путь к папке игры>). W przypadku pracy w trybie tłumacza i korzystania z APU musi on zawierać wiersz „Using Native OpenAL Renderer”. A w przypadku korzystania z wbudowanego silnika oprogramowania „Using Creative Software 3D Library”. W każdym razie nie powinno być żadnego „błędu” ani „niepowodzenia”.

Jeśli coś nie działa

Teraz gra się crashuje.
Zwykle spowodowane przez włączoną funkcję UAC i grę zainstalowaną w folderze, w którym nie można zapisać bez dostępu administratora (na przykład w Program Files, gdzie domyślnie instalowane są prawie wszystkie gry). Osobiście nie radzę wyłączać UAC nawet najbardziej „doświadczonym użytkownikom”. Rozwiązanie problemu bez wyłączania UAC jest następujące. Grę należy uruchomić raz z uprawnieniami administratora (wybierając odpowiednią pozycję w menu kontekstowym jej skrótu). Następnie musisz znaleźć plik dsoundlog.txt w folderze gry, otworzyć jego właściwości, przejść do zakładki „Bezpieczeństwo” i kliknąć „Edytuj”. Otworzy się okno


W nim wybierz „Użytkownicy”, zaznacz pole „Pełna kontrola” w kolumnie „Zezwól” i kliknij „OK”.

Wszystkie ścieżki są napisane poprawnie, ale z jakiegoś powodu nie działa lub dźwięk zacina się / z bardzo silnym echem / znika / itp.
Najprawdopodobniej konieczne jest dostosowanie czasu trwania i buforów. Aby to zrobić, musisz wybrać grę w ALchemy i kliknąć „Edytuj”. Konieczne jest zmniejszanie wartości czasu trwania w krokach co 5, aż błąd zniknie. Jeśli w tym samym czasie jąkanie zmieniło się na brak jakiegokolwiek efektu ze strony ALchemii lub dźwięku w ogóle, to konieczne jest zwiększanie buforów w krokach co 1. Przy każdej zmianie parametrów wystarczy po prostu zamknąć okno wywoływane przez przycisk „Edytuj” za pomocą przycisku OK. kolejno naciskać „<<" и ">>”, aby ponownie zastosować ALchemy, nie jest konieczne. W większości przypadków można znaleźć ustawienia już wybrane przez innych użytkowników .

Nadal nic nie pomaga
W tej chwili ALchemy istnieje tylko w wersji 32-bitowej. Może działać na 64-bitowym systemie Windows, ale tylko na 32-bitowych wersjach aplikacji. Nie działa również z grami napisanymi dla XAudio2. Używają innych mechanizmów do pozycjonowania i efektów 3D.

Użyłem ALchemy na Everest lub innego narzędzia diagnostycznego, a sekcja DirectSound pokazuje tylko obsługę EAX 4.0, podczas gdy moja karta powinna obsługiwać 5.0.
Nie martw się, to normalne. Tak się składa, że ​​nie ma ani jednej gry obsługującej EAX 5.0 pod DS3D, wszystkie używają OpenAL. A biorąc pod uwagę obecny stan rzeczy z DS3D, szanse na jakieś wyjście Nowa gra przy użyciu EAX 5.0 do DS3D są bliskie zeru. Dlatego twórcy ALchemy postanowili oszczędzić swoje wysiłki i nie budować w nim obsługi EAX 5.0.

Aby zapoznać się z filmem instalacyjnym:

I jeszcze jeden wizualny artykuł na temat sprzętowego i sprzętowego przetwarzania dźwięku na kartach dźwiękowych Creative:

W ostatnim czasie firmie Creative udało się znacząco zwiększyć zakres wersji oprogramowania X-Fi. To, co zaczęło się od jednej karty, XtremeAudio, jest teraz używane zarówno z zestawami słuchawkowymi, jak i zewnętrznymi urządzeniami USB, a nawet jest instalowane na wbudowanych kodekach o nazwie X-Fi MB. Ta ostatnia opcja najczęściej spotykana jest na topowych płytach Gigabyte lub jako oddzielna płyta Supreme FX X-Fi w zestawie płyty główne ASUS.

We wszystkich tych przypadkach warstwa przetwarzania oprogramowania i silniki dźwiękowe są instalowane na głównym sterowniku urządzenia. Dzieje się to w sposób przejrzysty dla użytkownika w przypadku urządzeń Creative, ale jest zauważalne na wbudowanych kodekach, na których podobny zestaw instaluje się w dwóch etapach: sterowników kodeków, a następnie X-Fi MB. Sam pakiet jest więc wszędzie taki sam, różnice są tylko na poziomie plików licencyjnych i aktywacyjnych.

Po co to wszystko piszę? Tak, bo istnieją zwykłe sprzętowe X-Fi z własnym procesorem dźwięku, a Creative wciąż o nich nie zapomniał, co jakiś czas aktualizując linię. Problem polega na tym, że większość użytkowników jest głęboko przekonana, że ​​różnica między implementacją programową a sprzętową polega jedynie na obciążeniu procesora, co od dawna im nie przeszkadza. Niektórzy bardziej zaawansowani wiedzą, że implementacja oprogramowania jest ograniczona do EAX 4, podczas gdy wersja sprzętowa ma również wersję 5, ale nie uważają tego za ważne pod pretekstem, że gier z EAX 5 jest bardzo mało (co do których mają rację).

W rzeczywistości współczesne procesory po prostu nie są wystarczająco dojrzałe, aby wydajnie iz wysoką jakością w czasie rzeczywistym wykonywać wszystkie manipulacje dźwiękiem gry na dziesiątkach sampli dźwiękowych w tym samym czasie. Nie przypadkowo napisałem „skutecznie”. Istnieją profesjonalne pakiety przetwarzania dźwięku, które zapewniają dobrą jakość w czasie rzeczywistym na nowoczesnych procesorach. Ale to już zupełnie inna sprawa, bo w tej chwili nie muszą dzielić procesora z obliczeniami graficznymi, fizyką, inteligencją wrogów i wiele więcej.

Ktoś może argumentować, że topowe nowoczesne procesory są 4-6 razy mocniejsze niż X-Fi. Ale to jest obliczane na podstawie prymitywnych operacji dodawania, podczas gdy przetwarzanie dźwięku wykorzystuje raczej specyficzne algorytmy, które są znacznie łatwiejsze do optymalizacji w wysoce wyspecjalizowanej architekturze niż na x86. Wystarczy przypomnieć, że w latach 2002-2003 topowe procesory były 15-20 razy mocniejsze od procesora dźwięku Audigy (poprzednik X-Fi prezentowany w topowej wówczas linii Creative). I nawet w takich warunkach Audigy z łatwością wyprzedzało wszelkie rozwiązania programowe pod względem jakości dźwięku w grach.

Na tym kończę nieco przydługą część wstępną i przechodzę do wizualnej demonstracji. Technika jest prosta. Wszystkie ustawienia urządzenia dźwiękowego są ustawione na domyślne. Dźwięk został nagrany z wejścia What U Hear, ma sygnał w takiej postaci, w jakiej wchodzi do DAC-a. Tak więc różnica w poziomie przetworników nie jest odzwierciedlona w reklamach, cała różnica w dźwięku, która jest obecna, zawdzięcza swoje istnienie wyłącznie różnicy w przetwarzaniu dźwięku wersji programowej i sprzętowej X-Fi. Wybrano dwie najważniejsze gry. Demonstracyjnie, nie dlatego, że tam z jakiegoś powodu różnica jest wyraźniej słyszalna, ale ze względu na możliwości, jakie wykorzystuje sama gra. Bardzo ważne jest, aby nie wyłączać wideo HD, ale oglądać je w maksymalnej jakości, ponieważ. szybkość transmisji obrazu i dźwięku są ze sobą powiązane.

Doom 3 programowy oraz sprzęt komputerowy wydajność. Gra korzysta z pospiesznie załatanego EAX 4 (i zgodnie z faktycznie zastosowanymi funkcjami, bardziej przypomina EAX 2.5). Za to, do czego został wybrany, nie można mu zarzucić wyostrzenia pod sprzęt Creative czy obecności wsparcia dla funkcji, które nie są dostępne w implementacji oprogramowania. Tutaj w implementacji oprogramowania zauważalne są przede wszystkim znaczne zniekształcenia dźwięku przy wysokich częstotliwościach, a także wyraźne przeszacowanie poziomu, nienaturalność i ogólnie niska jakość symulowania zmian dźwięku w zależności od pomieszczeń (to właśnie robi EAX jest). Nawiasem mówiąc, na wszystkich kartach oprogramowania dowolnego producenta najbardziej cierpią wyższe częstotliwości, zaczynając od 5 kHz. Wynika to z faktu, że im dźwięk jest bliższy maksimum aktualnej częstotliwości odniesienia (przy częstotliwości 44 kHz maksimum wynosi 22, czyli 2 razy mniej), tym trudniej jest go przetworzyć jakościowo, ponieważ . potrzeba coraz większego zwiększania stopnia interpolacji, zapotrzebowanie na zasoby obliczeniowe rośnie wykładniczo. Sprzęt X-Fi, ze względu na cechy tkwiące w jego architekturze, może pozwolić sobie nie tylko na wysokie stopnie, ale także pracować w trybie gry ze stałą częstotliwością odniesienia 96 kHz dla wszystkich 128 strumieni. A gdyby nagle jeden z dumnych użytkowników wbudowanego dźwięku postanowił to sprawdzić stara gra w domu mogę od razu potwierdzić wrażenia. Tak, na czystym wbudowanym dźwięku bez dodatków, ze względu na brak prób zobrazowania jakichkolwiek efektów, dźwięk jest w ostatecznym rozrachunku zauważalnie lepszy niż na oprogramowaniu X-Fi. opublikował nagranie tego samego fragmentu gry za pomocą wbudowanego silnika audio, który jest używany przez grę na wbudowanym dźwięku. Sytuacja często się powtarza, wbudowane kodeki są znaczącym liderem wśród innych kart oprogramowania pod względem jakości dźwięku w grach, bez względu na to, jak wspaniałe technologie są reklamowane na wielokolorowych pudełkach. Raczej im więcej obiecują, tym gorszego dźwięku należy się spodziewać. Pod tym względem dobre są profesjonalne interfejsy dźwiękowe, które po prostu nie obsługują żadnych efektów w grach. Cóż, sprzęt X-Fi, zdolny do ich reprodukcji bez powodowania obrzydzenia.

Zapomnienie w programowy oraz sprzęt komputerowy wydajność. Ta gra nawet nie podejrzewa istnienia jakiegoś niejasnego EAX i dlatego jest jeszcze bardziej odkrywcza. Od razu widać (a może to „słychać”?), że i tutaj jest różnica. W wersji softowej postacie dosłownie seplenią, a uderzenia zaklętym mieczem i magią po prostu przeciążają mikser i brzmią nieczytelnie, choć więcej basu niż na wersji sprzętowej. Nadmierny bas, nawiasem mówiąc, to co innego Charakterystyka dowolne oprogramowanie kart dźwiękowych dowolnego producenta. Pochodzi bezpośrednio ze zniekształceń przy wysokich częstotliwościach. Aby uczynić je mniej zauważalnymi, producenci po prostu obniżają poziom samego sygnału, „wypełniając górę”. Hardware X-Fi ułatwia podkręcenie basu lub obniżenie wysokich tonów bez reperkusji, jeśli ktoś tak lubi. Tego samego nie można powiedzieć o możliwości pozbycia się nieczytelności góry na mapie programu.

O surogatkach z Creative. „Wbudowane” X-Fi, XtremeAudio i inne rzemiosła w grach

Ten wpis jest kontynuacją „O surogatkach z Creative. „Wbudowane” X-Fi, XtremeAudio i inne rzemiosła w grach”. Ostatnim razem rozważono główne trendy w jakości dźwięku rozwiązań programowych do przetwarzania dźwięku z gier. Dlaczego i jak ogólnie brzmią. Następnie porównanie było bezpośrednie, sprzętowe Creative z ich „krewnymi” programowymi.

Dziś uzupełniam małą lukę w tym wpisie. Luka ta związana jest z brakiem przykładów nagrań z dość popularnej linii kart dźwiękowych ASUS Xonar.
Tak jak poprzednio wszystko zostało nagrane przez What U Hear (dla Xonara przez Stereo Mix o tym samym przeznaczeniu), co wyklucza wpływ różnic w ścieżce analogowej kart, cała różnica wynika tylko z chipa i przetwarzania stosowane algorytmy. Obie karty są przełączane w tryb gry, GX jest włączony na Xonar, Alchemia jest stosowana na X-Fi, jeśli to konieczne. Szybkość transmisji obrazu i dźwięku w nagraniach jest powiązana, więc trybu HD nie należy wyłączać.

Pierwszą grą jest ponownie Doom 3 z pospiesznie poprawionym EAX 4. Nagranie ze sprzętowego X-Fi nie zostało zmienione, na wszelki wypadek Opublikuję link do niego, i w tym samym czasie wersja z oprogramowania X-Fi. ORAZ lubię to brzmi na Xonarze. W tym miejscu należy poczynić kilka komentarzy. Ogólnie rzecz biorąc, jakość dźwięku jest zauważalnie gorsza od sprzętu X-Fi, a nawet wbudowany silnik audio gry, ale trochę wygodniejsze niż oprogramowanie X-Fi. W rzeczywistości oprogramowanie X-Fi przetwarza dźwięk trochę lepiej niż Xonar, ale w tym przypadku Xonarowi zupełnie brakuje pogłosów EAX, tj. wytwarza nieco mniej przemocy w dźwięku. Wynika to z faktu, że Xonar obsługuje tylko EAX 2, plus informuje gry o swoim wsparciu dla EAX 5. Jednocześnie ucina połączenia z możliwościami EAX 5 do EAX 2, a oni zapomnieli o EAX 3 i 4 na tej karcie (Przypominam, że Doom 3 używa EAX 4). Sytuacja nie zmienia się od kilku lat i raczej nie da się jej naprawić. Niemniej jednak gra działa w trybie OpenAL i całe przetwarzanie jest przenoszone na kartę, brakuje tylko pogłosów EAX, ale o EAX już pisano o znikomości dźwięku gry.

Drugą grą był Fallout 3. Gra bazuje na zaktualizowanej wersji silnika Oblivion użytego w poprzednich testach. Fallout 3 ma o wiele więcej akcji, więc łatwiej jest usłyszeć różnice. Podobnie jak w Oblivion, w ogóle nie używa się tutaj EAX. Nagrywanie dla Xonara od sprzętowe X-Fi różni się głównie słabą jakością wysokich i średnich częstotliwości, mocnym spadkiem wysokich częstotliwości (do tego stopnia, że ​​jest to już symulator potwornie zimnej postaci z zatkanymi uszami) oraz niezrozumiale pobieranymi pogłosami w miejscach, w których nie powinno ich być . Skąd bierze się większość tych problemów, szczegółowo omówiliśmy w poprzednim czasie.

W mojej kolekcji znajdują się trzy brzmienia firmy Creative: Creative Audigy SE sb0570 (EAX3_software, no ASIO) chipset CA0106-DAT LF, Sound Blaster Audigy Rx sb1550 (EAX4_hardware, ASIO 2.0) chipset (E-MU) CA10300-IAT LF*, Creative X-Fi Titanium sb0880 (EAX5_hardware, ASIO 2.0) Chipset CA20K2-2AG-HF.

*(E-MU) CA10300-IAT LF to ogólny chipset zainstalowany w karcie Sound Blaster Audigy 4 sb 0610 (2004), wrócił w nowymSound Blaster Audigy Rx (2013).



Kolejny ważny punkt! Stosunkowo nowe modele Sound Blaster Z (70sb150000001) i Sound Blaster ZX (70sb150600001) ) nie wykorzystują w pełni efektów EAX w sprzęcie. Członek forów Creative pisze, co następuje:

„X-fi była ostatnią kartą dźwiękową z w pełni funkcjonalnym dźwiękiem 3D z akceleracją sprzętową. Potem jest z górki ze sprzętowym dźwiękiem 3D. Nowsze karty mają znakomitą jakość dźwięku (lepszą niż większość kart X-fi), ale brakuje im zaawansowanej akceleracji sprzętowej.Należy pamiętać, że dźwięk 3D z akceleracją sprzętową jest obecnie używany coraz rzadziej, co jest naprawdę wstydem”.

I mówimy o programowym przetwarzaniu efektów EAX, a nie o emulacji, jak mówimy w niektórych kartach dźwiękowych firmy ASUS. dobry wpis

Encyklopedyczny YouTube

    1 / 3

    ✪ Kryzys środowiskowy: Al Gore o ekologii, możliwościach ekonomicznych i edukacji (1992)

    ✪ ZIELONY! (Piosenka z okazji Dnia Ziemi dla dzieci o 3 R „s- Zmniejsz, użyj ponownie i poddaj recyklingowi!

    ✪ Źródła audio i słuchacze - oficjalne samouczki Unity

    Napisy na filmie obcojęzycznym

Technologia

Systemy pozycjonowania dźwięku, takie jak DirectSound3D, kontrolują lokalizację źródeł dźwięku i słuchacza w przestrzeni 3D gry. Na przykład gra może wykorzystywać DirectSound3D do tworzenia oddzielnych źródeł dźwięku dla każdego stworzenia w grze, dzięki czemu odbiera strzały i głosy z różnych miejsc w świecie 3D. Dźwięki te, podobnie jak słuchacz, mogą poruszać się w przestrzeni. Twórcy gier mogą korzystać z funkcji audio, takich jak paleta kierunkowa (dźwięk w jednym kierunku może być głośniejszy niż w innym), efekt Dopplera (dźwięk może się unosić, gdy dociera do słuchacza, a następnie opadać, jakby oddalał się w przestrzeni).

EAX ulepsza DirectSound3D, tworząc wirtualne środowisko audio wokół źródeł dźwięku i słuchacza. Technologia ta emuluje pogłos i odbicia dochodzące ze wszystkich kierunków słuchacza. Efekty te stwarzają wrażenie, że wokół słuchacza istnieje realny świat o własnych parametrach, takich jak: wielkość pomieszczenia, właściwości odbijające i pochłaniające ścian i inne. Programiści gier mogą tworzyć różne efekty akustyczne dla różnych pomieszczeń. W ten sposób gracz grający w grę EAX może usłyszeć różnicę w dźwięku podczas przechodzenia z korytarza do jaskini.

Oprócz tworzenia efektów otoczenia, EAX 1.0 może zmieniać parametry różnych źródeł dźwięku. Gdy zmienisz położenie źródła dźwięku względem słuchacza, automatycznie zmienią się parametry pogłosu.

EAX jest używany w wielu popularnych grach komputerowych, w tym Half-Life, Counter-Strike, Grand Theft Auto San Andreas, Grand Theft Auto IV, S.T.A.L.K.E.R. , Doom 3 i wiele innych. Te gry obsługują EAX w wersji 4.0 i 5.0, jeśli komputer jest wyposażony w urządzenie audio, którego sterownik obsługuje OpenAL. Ponieważ akceleracja sprzętowa DirectSound i DirectSound3D nie jest już obsługiwana w systemie Windows Vista, OpenAL prawdopodobnie zyska popularność wśród programistów, którzy chcieliby używać EAX w swoich grach.

Większość wydań wersji EAX zbiega się ze wzrostem liczby jednoczesnych sprzętowego przetwarzania głosu przez procesor dźwięku: EAX 1.0 obsługuje 8 jednoczesnych strumieni (kanałów) głosu, podczas gdy EAX 5.0 pozwala na 128 głosów (i do 4 efektów zastosowanych do każdego).

Wersje EAX

EAX miał wiele iteracji rozwojowych, z których każda dodawała wszystko więcej funkcji. Poniżej znajduje się przegląd obecnie dostępnych wersji EAX i ich funkcji w stosunku do poprzedniej wersji.

EAX 1.0

EAX 1.0 wprowadzony w Sound Blaster Live! .

  • Wsparcie sprzętowe dla 8 jednocześnie brzmiących kanałów.
  • Wsparcie sprzętowe dla 32 indywidualnych kanałów.
  • Sprzętowe renderowanie DSP.
  • Obsługuje zmianę miejsca w grze pogłosów i odbić.
  • Ma dużą liczbę presetów.
  • Umożliwia (ograniczoną) modyfikację pogłosu otoczenia.
  • Pozwala na automatyczną zmianę natężenia pogłosu w zależności od położenia źródła dźwięku względem słuchacza.

EAX 1.0 buduje scenę dźwiękową w oparciu o gotowe presety, uwzględniając odległość między źródłami dźwięku a słuchaczem. W związku z tym EAX 1.0 zapewnia duży zestaw ustawień „na każdą okazję”. Możliwa jest również zmiana parametrów późnego pogłosu (wyciszenie, poziom) oraz automatyczna zmiana poziomu w zależności od odległości. Powoduje to lepsze postrzeganie odległości do źródła.

EAX 2.0

  • Zaktualizowany model pogłosu.
  • Dodano efekty barier dźwiękowych (przeszkody) i absorpcji (okluzje).
  • Oddzielna kontrola wczesnych odbić i późnych pogłosów. Ciągła kontrola wymiarów pomieszczeń. Ulepszony model odległości do automatycznego sterowania pogłosami i początkowymi odbiciami w oparciu o lokalizację źródła dźwięku względem słuchacza.
  • Umiejętność uwzględnienia właściwości dźwiękowych powietrza (pochłanianie dźwięku).
  • Teraz, aby skorzystać z efektów Environmental Audio nie wymaga opisu geometrii pomieszczenia.

EAX 2.0 opiera się na możliwościach pierwszej wersji i tworzy jeszcze bardziej realistyczne efekty dzięki obsłudze okluzji i odbicia dźwięku, a także ulepszonej technologii wykrywania kierunku dźwięku.

EAX 3.0

  • Wsparcie sprzętowe dla 64 pojedynczych kanałów.
  • Kontrola wczesnych pogłosów i odbić dla każdego źródła dźwięku.
  • Dynamiczne przejście między otaczającymi modelami.
  • Ulepszony model odległości do automatycznego sterowania pogłosem i początkowymi odbiciami w zależności od położenia źródeł dźwięku względem słuchacza.
  • Obliczenia Ray-Tracing (odbicia promieni) w celu uzyskania parametrów odbicia dla każdego źródła dźwięku.
  • Oddzielne odbicia dla odległych ech.
  • Ulepszona reprezentacja odległości zaprojektowana w celu zastąpienia statycznych modeli pogłosu.

EAX 3.0 łączy drugą wersję z potężniejszymi funkcjami. Nowy poziom realizmu uzyskuje się dzięki obsłudze lokalnych odbić, odbić izolowanych, „płynnych” przejść między scenami dźwiękowymi i innych funkcji.

EAX 4.0

EAX 4.0 jest obecny w kartach dźwiękowych Sound Blaster Audigy 2.

  • Efekty sprzętowe w czasie rzeczywistym
  • Wiele równoczesnych środowisk
  • Zniekształcenie (Zniekształcenie)
  • Efekty modulacji pierścieniowej

EAX 5.0

EAX 5.0 jest obecny w kartach dźwiękowych Sound Blaster X-Fi i ASUS ROG Xonar Phoebus.

  • Wsparcie sprzętowe dla 128 indywidualnych kanałów z 4 efektami na kanał.
  • EAX Voice (przetwarzanie wejścia mikrofonowego).
  • EAX PurePath (poprawa dokładności pozycjonowania wirtualnych źródeł dźwięku).
  • Środowisko FlexiFX (4 gniazda efektów na kanał).
  • EAX MacroFX (realistyczne efekty pozycjonowania z bliskiej odległości).
  • Okluzja otoczenia (efekt sprawia wrażenie, że źródło dźwięku znajduje się w innym miejscu, za ścianą).

Przyszły

Zgodnie ze specyfikacją Creative OpenAL 1.1, EAX należy uznać za przestarzały. Nowe rozwiązania powinny wykorzystywać interfejs OpenAL EFX, który jest ściślej zintegrowany z całym środowiskiem OpenAL.

emulacja EAX

Oprócz urządzeń sprzętowych firma Creative wydała sterowniki emulacji EAX dla komputerów z wbudowaną kartą dźwiękową.

Różnice dotyczą pakietu oprogramowania. Sound Blaster Audigy ADVANCED MB zawiera Creative Audio Center, Creative MediaSource 5 Player/Organizer, Creative WaveStudio 7, Creative ALchemy; Zestaw Sound Blaster X-Fi MB obejmuje konsolę rozrywkową, odtwarzacz Creative Karaoke, odtwarzacz/organizator Creative MediaSource 5, Creative WaveStudio 7, Creative Audio Console, Creative ALchemy.

Znany również jako Sound Blaster Audigy ADVANCED MB, jest podobny do Audigy 2 SE i oprogramowanie obsługuje EAX 3.0, który obsługuje 64-kanałowe oprogramowanie wavetable z akceleracją DirectSound, ale nie obsługuje syntezy wavetable z akceleracją sprzętową. DAC ma stosunek sygnału do szumu 95dB.

Jest dostępny jako wbudowana opcja dla laptopów Dell Inspiron, Studio i XPS.

Najnowsze sterowniki obsługują EAX 4.0.

Karta dźwiękowa Sound Blaster X-Fi MB

Możliwości:

  • Obsługa EAX 4.0 i OpenAL
  • Krystalizator
  • CMSS-3D
  • Korektor graficzny
  • Creative ALchemy (tylko Windows Vista, umożliwia EAX na Vista)
  • Program uruchamiający konsolę (tryb rozrywki)
  • Konsola audio
  • Gracz karaoke
  • kreatywne studio falowe
  • Kreatywne źródło mediów

W przeciwieństwie do swojego poprzednika, Audigy Advanced MB, X-Fi MB nie zawiera syntezatora programowego SoundFont. Kolejną różnicą jest to, że ma ona możliwość wzięcia udziału w 30-dniowym okresie próbnym.

System przetwarzania dźwięku przestrzennego Environmental Audio eXtensions™ (EAX) jest używany przez wielu twórców gier do tworzenia naturalnego dźwięku przestrzennego, dostosowanego do środowiska lub przestrzeni, w której toczy się gra i gdzie znajdują się źródła dźwięku. EAX można traktować jako zestaw specyfikacji definiujących modele i algorytmy tworzenia efektów dźwiękowych otoczenia lub pomieszczenia w oparciu o pogłos (Environmental Audio oznacza dźwięk przestrzenny).

Pojęcie „pogłos” (od średniowiecza. łac. reverberatio – odbicie) rozumiane jest jako podźwięk, który utrzymuje się po wyłączeniu źródła dźwięku i wynika z niejednoczesnego nadejścia odbitych lub rozproszonych fal dźwiękowych w danym punkcie punkt. Pogłos ma znaczący wpływ na słyszalność mowy i muzyki w pomieszczeniu.

EAX zawiera również zestaw funkcji API, które pozwalają programiście korzystać ze wsparcia sprzętowego EAX. W chwili pisania tego artykułu pojawiła się już czwarta wersja EAX, która jest dostępna na stronie Creative Labs w dziale deweloperskim.

Interfejs API EAX jest rozszerzeniem podstawowego systemu dźwięku przestrzennego DirectSound3D. Podczas działania aplikacji EAX proces przetwarzania dźwięku jest podzielony: DirectSound3D kontroluje lokalizację, prędkość poruszania się w przestrzeni 3D źródeł dźwięku i słuchacza, a EAX dokonuje takich zmian w dźwięku, które charakteryzują przestrzeń otaczającą dźwięk źródło.

Wsparcie dla systemu EAX jest zapewnione na poziomie sprzętowym przez wbudowane procesory dźwięku kart dźwiękowych (akceleratory dźwięku). Oczywiście ta obsługa jest realizowana przede wszystkim na płytach Creative.EAX jest oparty na technologii E-mu Environmental Modeling obsługiwanej przez procesor dźwięku EMU10K1 zainstalowany w SBLive! Modele EAX uwzględniają rodzaj emiterów dźwięku: słuchawki, system stereo i quad. Akcelerator audio EMU10K1 rozkłada dowolny strumień audio na wiele kanałów, a następnie stosuje pogłos do każdego kanału w czasie rzeczywistym. Dzięki temu powstają nowe dźwięki, które są bliższe ich naturalnemu brzmieniu w rzeczywistej przestrzeni.

ponieważ ucho ludzkie słyszy nie tylko dźwięk dochodzący bezpośrednio ze źródła, ale także odbiera wtórne (i późniejsze) drgania dźwięku, które są determinowane odległością od źródła, a także parametrami pogłosu, to właśnie odległość i pogłos można uznać za główne cechy przestrzeni lub pokoju.

Początkowo zakładano, że EAX nie wykorzysta geometrycznego modelu sceny, czyli źródeł dźwięku nie będzie można powiązać z obiektami graficznymi. Najważniejsze było stworzenie dźwiękowego klimatu sceny gry, czyli wpłynięcie na stan emocjonalny gracza, tak jak w filmie akompaniament dźwiękowy zawsze podkreśla dotkliwość emocji, skupiając się na najważniejszym i pomijając drugorzędny dźwięk Detale. Kierując się tym podejściem, twórcy EAX jako podstawę wybrali statyczny model środowiska dźwiękowego, a nie jego parametry geometryczne. Model statyczny automatycznie oblicza efekty pogłosu i odbicia w stosunku do słuchacza, biorąc pod uwagę wielkość pomieszczenia, kierunek dźwięku i inne parametry, które programista może ustawić dla każdego źródła dźwięku. Obliczenia modelu statycznego wymagają mniejszych zasobów obliczeniowych niż modele oparte na podejściu geometrycznym. EAX korzysta z gotowych modeli dźwiękowych, które są zbiorem liczbowych wartości parametrów pomieszczenia lub przestrzeni. Parametry te nie charakteryzują położenia obiektów w pomieszczeniu, jak ma to miejsce w modelu geometrycznym, ale zachowanie się fal dźwiękowych w takim pomieszczeniu lub przestrzeni, czyli opóźnienia propagacji, stopień tłumienia, pochłanianie dźwięku i odbicie przy różnych częstotliwościach dźwięku. Jeśli zgodnie z fabułą gry konieczna jest zmiana długiego korytarza na duży hangar, wystarczy zmienić jeden model statyczny (model korytarza) na inny (model hangaru). Modele różnych pomieszczeń (ich wartości liczbowe) prezentowane są w EAX w postaci presetów (presetów). Takie podejście zapewnia prostsze programowanie dźwięku 3D w grze, zmniejsza ilość obliczeń podczas modelowania panoramy dźwiękowej. Uzyskany dźwięk ma bardzo realistyczny dźwięk. Z drugiej strony statyczny charakter metody może powodować, że wybrany preset podczas gry może nie odpowiadać graficznemu (geometrycznemu) odwzorowaniu sceny. Na przykład w modelu geometrycznym, jeśli na przykład zawaliły się ściany pokoju, dźwięk zmieni się z powodu samego modelu, a nie na siłę, w oparciu o inne flagi lub znaki. W przypadku modelu statycznego dźwięk pozostanie taki sam, jak przed zawaleniem się ścian, dopóki nie zostanie wybrany inny preset.

EAX 1.0 Obsługuje zmianę lokalizacji pogłosów i odbić; ma dużą liczbę ustawień wstępnych; pozwala (z pewnymi ograniczeniami) na zmianę parametrów pogłosowych pomieszczenia; automatycznie zmienia intensywność pogłosu w zależności od położenia źródła dźwięku. EAX 1.0 buduje scenę dźwiękową w oparciu o gotowe presety, uwzględniając odległość między źródłami dźwięku a słuchaczem.

EAX 2.0 Zaktualizowany model pogłosu; dodano efekty barier dźwiękowych (Occlusions) i przeszkód (Przeszkody); zaimplementowano oddzielną kontrolę wczesnych i późnych odbić; możliwa długoterminowa kontrola wymiarów lokalu; brane są pod uwagę właściwości akustyczne powietrza (pochłanianie dźwięku). Teraz, aby skorzystać z efektów Environmental Audio nie wymaga opisu geometrii pomieszczenia. EAX 2.0 opiera się na funkcjach pierwszej wersji i tworzy jeszcze bardziej realistyczne efekty.

EAX 3.0 pozwala kontrolować początek pogłosu i wczesne odbicia dla każdego źródła dźwięku; implementuje dynamiczne przejście między modelami kosmicznymi; zawiera ulepszony model odległości do automatycznego sterowania pogłosem i początkowymi odbiciami w zależności od położenia źródeł dźwięku względem słuchacza. Ta specyfikacja odbiega już nieco od modelu statycznego i zawiera metody typowe dla modeli geometrycznych: obliczenia Ray-Tracing w celu uzyskania parametrów odbicia dla każdego źródła dźwięku. Dodatkowo zaimplementowano osobne odbicia dla odległych ech. Ulepszona reprezentacja odległości zaprojektowana w celu zastąpienia statycznych modeli pogłosu. EAX 3.0 łączy drugą wersję z nowymi funkcjami. Wyższy poziom realizmu uzyskuje się dzięki obsłudze lokalnych odbić, pojedynczych odbić, długich przejść między scenami i nie tylko.

Narzędzia FMOD do pracy z EAX

Popularna wśród wielu programistów (zwłaszcza entuzjastów niekomercyjnego oprogramowania), biblioteka funkcji audio FMOD (firmy Firelight Technologies Pty) zapewnia szereg opcji pracy z systemem EAX. O nich dalej i zostaną omówione.

Aby zapoznać się z biblioteką FMOD, warto zapoznać się z artykułem Używanie FMOD w grach dźwiękowych, w którym opisano podstawowe zasady pracy z tą biblioteką, a także kolejność działań (wywołania funkcji FMOD API) do tworzenia źródeł dźwięku przestrzennego i obliczania panoramy dźwiękowej.

W tej chwili (mówimy o FMOD w wersji 3.74) biblioteka obsługuje EAX 2.0 i 3.0 (zakłada się jednak, że specyfikacje EAX są kompatybilne „oddolnie”, czyli ustawienia dla EAX 2.0 będą poprawnie obsługiwane przez karty dźwiękowe, które implementują EAX 3.0 itp.).

Sprawdzanie obsługi sprzętu EAX

Zanim użyjesz EAX do stworzenia realistycznego pejzażu dźwiękowego, musisz ustalić, czy twoja karta dźwiękowa ma takie wsparcie. W tym celu w bibliotece FMOD dostępna jest funkcja FSOUND_GetDriverCaps(). Jako parametr funkcja ta przyjmuje liczbę całkowitą oznaczającą numer urządzenia audio w systemie. Wartość zero odpowiada urządzeniu domyślnemu. Na komputerach z jedną kartą dźwiękową domyślnym urządzeniem jest ta karta dźwiękowa. Jako drugi parametr funkcja otrzymuje wskaźnik do zmiennej typu integer, czyli na adres w pamięci, pod który zostanie zapisana liczba całkowita, czyli zbiór pól bitowych. Te pola bitowe wskazują, jakie tryby pracy obsługuje karta dźwiękowa. Funkcja zwraca PRAWDA w przypadku sukcesu, FAŁSZ w przypadku błędu.

Plik fmod.h definiuje trzy stałe: FSOUND_CAPS_HARDWARE, FSOUND_CAPS_EAX2, FSOUND_CAPS_EAX3, które ustawiają pola bitowe wskazujące obsługę sprzętowego dźwięku 3D, odpowiednio EAX 2.0 i EAX 3.0.

/* Przykład analizy możliwości karty dźwiękowej */ /* dla win32 */ ... UINT caps = 0; UINT identyfikator_urządzenia = 0; //domyślny znak urządzenia msg_buf ; //bufor wiadomości FSOUND_GetDriverCaps(device_id, &caps); msg_buf = 0; if (!caps) sprintf(msg_buf, "Brak sprzętowej obsługi dźwięku 3D i EAX.\r\n"); if (caps & FSOUND_CAPS_HARDWARE) strcat(msg_buf, "* Obsługa dźwięku 3D\r\n"); if (caps & FSOUND_CAPS_EAX2) strcat(msg_buf, "* Obsługa EAX 2 \r\n"); if (caps & FSOUND_CAPS_EAX3) strcat(msg_buf, "* Obsługa EAX 3 \r\n"); // Wyświetl komunikat MessageBox (NULL, msg_buf, "Information", MB_OK); ...

Funkcję FSOUND_GetDriverCaps() należy wywołać przed wywołaniem funkcji FSOUND_Init() lub po wywołaniu funkcji FSOUND_Close();

Struktury FSOUND_REVERB_PROPERTIES i FSOUND_REVERB_CHANNELPROPERTIES

Z punktu widzenia programisty specyfikację EAX można traktować jako strukturę opisującą parametry pogłosu pomieszczenia (przestrzeni). Takich parametrów może być więcej niż dwa tuziny.

Struktura FSOUND_REVERB_PROPERTIES zawiera parametry wspólne dla wszystkich istniejących źródeł dźwięku. Struktura FSOUND_REVERB_CHANNELPROPERTIES charakteryzuje pojedyncze źródło (kanał). Członkowie tych struktur są wymienieni poniżej, najpierw dla FSOUND_REVERB_PROPERTIES, a następnie dla FSOUND_REVERB_CHANNELPROPERTIES. Szczegółowe rozważenie fizyczne znaczenie tych parametrów wykracza poza zakres artykułu. W przypadku wszystkich pytań należy zapoznać się z dokumentacją EAX.

/* FSOUND_REVERB_PROPERTIES */ / Liczby odzwierciedlają zakres wartości i wartość domyślną. */ /* Liczby całkowite zwykle reprezentują decybele, */ /* Liczby rzeczywiste reprezentują zależność liniową. */ unsigned int Środowisko /* 0 , 25 , 0 , ustawia wszystkie właściwości detektora (tylko WIN32/PS2) */ float EnvSize /* 1.0 , 100.0 , 7.5 , Rozmiar pokoju (przestrzeni) w metrach (tylko WIN32) */ float EnvDiffusion /* 0.0 , 1.0 , 1.0 , Przepuszczalność (rozproszenie) przestrzeni (WIN32/XBOX) */ int Room /* -10000, 0 , -1000 , Poziom dotkliwości efektu pomieszczenia (przy średnich częstotliwościach) (WIN32/XBOX/ PS2) */ int RoomHF /* -10000, 0 , -100 , Poziom względny efekt pomieszczenia przy wysokich częstotliwościach (WIN32/XBOX) */ int RoomLF /* -10000, 0 , 0 , Względny poziom efektu pomieszczenia przy niskich częstotliwościach (tylko WIN32) */ float DecayTime /* 0.1 , 20.0 , 1.49 , czas zaniku mid - pogłosy częstotliwości (WIN32/XBOX) */ float DecayHFRatio /* 0.1 , 2.0 , 0.83 , stosunek czasu zaniku wysokiej częstotliwości do średniej (WIN32/XBOX) */ float DecayLFRatio /* 0.1 , 2.0 , 1.0 , niska częstotliwość stosunek czasu zaniku do średniej częstotliwości (tylko WIN32) */ int Reflections /* -10000, 1000 , -2602 , Poziom wczesnego odbicia w stosunku do efektu pomieszczenia (WIN32/XBOX) */ float ReflectionsDelay /* 0.0 , 0.3 , 0.007 , Time początkowe opóźnienia pogłosu (WIN32/XBOX) */ float ReflectionsPan /* , , Wektor panoramy wczesnego odbicia (tylko WIN32) */ int Reverb /* -10000, 2000 , 200 , Poziom późnego odbicia w stosunku do efektu pomieszczenia (WIN32/XBOX) * / float ReverbDelay /* 0.0 , 0.1 , 0.011 , Czas opóźnienia późnego odbicia w stosunku do początkowego pogłosu (WIN32/XBOX) */ float ReverbPan /* , , Wektor panoramiczny z późnym odbiciem (tylko WIN32) */ float EchoTime /* .075 , 0,25 , 0,25 , czas echa (tylko WIN32/PS2. PS2 = Czas opóźnienia tylko dla trybów echa/DELAY) */ float EchoDepth /* 0.0 , 1.0 , 0.0 , Głębokość echa (tylko WIN32/PS2. PS2 = Poziom sprzężenia zwrotnego tylko dla trybu ECHO) */ float ModulationTime /* 0.04 , 4.0 , 0.25 , Czas modulacji (tylko WIN32) */ float ModulationDepth /* 0.0 , 1.0 , 0.0 , Głębokość modulacji (tylko WIN32) */ float AirAbsorptionHF /* -100 , 0.0 , -5.0 , Zmiana poziomu na jednostkę długości (absorpcja ) przy wysokim częstotliwości (tylko WIN32) */ float HFReference /* 1000.0, 20000 , 5000.0 , wysoka częstotliwość odniesienia (Hz) (WIN32/XBOX) */ float LFReference /* 20.0 , 1000.0, 250.0 , niska częstotliwość odniesienia (Hz) (tylko WIN32) */ float RoomRolloffFactor /* 0.0 , 10.0 , 0.0 , Podobnie jak FSOUND_3D_SetRolloffFactor, ale dla efektu pomieszczenia (WIN32/XBOX) */ float Diffusion /* 0.0 , 100.0 , 100.0 , Wartość kontrolująca gęstość echa w późnym zaniku pogłosu. (tylko XBOX) */ float Density /* 0.0 , 100.0 , 100.0 , Wartość kontrolująca gęstość modalną w późnym zaniku pogłosu (tylko XBOX) */ unsigned int Flags /* FSOUND_REVERB_FLAGS — Modyfikuje zachowanie powyższych elementów struktury (WIN32 /tylko PS2 ) */ /* FSOUND_REVERB_CHANNELPROPERTIES */ int Direct /* -10000, 1000, 0, bezpośredni poziom ścieżki (przy niskich i średnich częstotliwościach) (WIN32/XBOX) */ int DirectHF /* -10000, 0, 0, względny poziom ścieżki bezpośredniej przy wysokich częstotliwościach (WIN32/XBOX) */ int Pokój /* -10000, 1000, 0 , 0, Poziom względny efektu pomieszczenia przy wysokich częstotliwościach (WIN32/XBOX) */ int Przeszkoda /* -10000, 0, 0, Tłumienie przy wysokich częstotliwościach (WIN32/XBOX) */ float ObstructionLFRatio /* 0. 0, 1.0, 0.0, Poziom przeszkody przy niskich częstotliwościach re. główna kontrola (WIN32/XBOX) */ int Occlusion /* -10000, 0, 0, main kontrola okluzji (tłumienie przy wysokich częstotliwościach) (WIN32/XBOX) */ float OcclusionLFRatio /* 0.0, 1.0, 0.25, occlusion low-frequency poziom re. sterowanie główne (WIN32/XBOX) */ float OcclusionRoomRatio /* 0.0, 10.0, 1.5, względna kontrola okluzji dla efektu pomieszczenia (WIN32) */ float OcclusionDirectRatio /* 0.0, 10.0, 1.0, względna kontrola okluzji dla ścieżki bezpośredniej (WIN32) * / int Wykluczenie /* -10000, 0, 0, główna kontrola wykluczenia (tłumienie przy wysokich częstotliwościach) (WIN32) */ float WykluczenieLFRatio /* 0.0, 1.0, 1.0, wykluczenie poziomu niskich częstotliwości re. sterowanie główne (WIN32) */ int OutsideVolumeHF /* -10000, 0, 0, zewnętrzny poziom stożka dźwięku przy wysokich częstotliwościach (WIN32) */ float DopplerFactor /* 0.0, 10.0, 0.0, jak DS3D flDopplerFactor, ale na źródło (WIN32) * / float RolloffFactor /* 0.0, 10.0, 0.0, jak DS3D flRolloffFactor, ale dla źródła (WIN32) */ float RoomRolloffFactor /* 0.0, 10.0, 0.0, jak DS3D flRolloffFactor, ale dla efektu pomieszczenia (WIN32/XBOX) */ float AirAbsorptionFactor /* 0.0, 10.0, 1.0, mnoży element AirAbsorptionHF FSOUND_REVERB_PROPERTIES (WIN32) */ int Flags /* FSOUND_REVERB_CHANNELFLAGS - modyfikuje zachowanie właściwości (WIN32) */

presety

Jak wspomniano wcześniej, Creative Labs udostępnia zestawy wartości liczbowych dla członków tych struktur. Te wartości liczbowe są obecne w bibliotece FMOD jako presety. Dzięki presetom nie ma potrzeby samodzielnego przeprowadzania fizycznych eksperymentów w celu określenia parametrów konkretnego pomieszczenia, a także pochłaniania i odbicia dźwięku materiału, z którego zbudowane są ściany. Ustawienia wstępne są tworzone tylko dla struktury FSOUND_REVERB_PROPERTIES. Parametry liczbowe presetów znajdują się w pliku fmod.h, gdzie są deklarowane za pomocą instrukcji #define. Z tego powodu ustawienia wstępne mogą być używane do inicjowania struktur tylko wtedy, gdy są zadeklarowane, na przykład:

FSOUND_REVERB_PROPERTIES właściwość = FSOUND_PRESET_AUDITORIUM;

Oto lista ustawień wstępnych używanych podczas pracy z DirectSound3D w systemie Windows:

  • FSOUND_PRESET_OFF - Przetwarzanie pogłosu wyłączone
  • FSOUND_PRESET_GENERIC - opcje domyślne
  • FSOUND_PRESET_PADDEDCELL - "komórka (komora), tapicerowana materiałem"
  • FSOUND_PRESET_ROOM - "pokój"
  • FSOUND_PRESET_BATHROOM - "łazienka"
  • FSOUND_PRESET_LIVINGROOM - "salon"
  • FSOUND_PRESET_STONEROOM - "pokój z kamiennymi ścianami"
  • FSOUND_PRESET_AUDITORIUM - "publiczność"
  • FSOUND_PRESET_CONCERTHALL - "sala koncertowa"
  • FSOUND_PRESET_CAVE - "jaskinia"
  • FSOUND_PRESET_ARENA - "arena"
  • FSOUND_PRESET_HANGAR "Hangar"
  • FSOUND_PRESET_CARPETTEDHALLWAY - "korytarz wyłożony wykładziną (przedpokój)"
  • FSOUND_PRESET_HALLWAY - "korytarz" ("korytarz")
  • FSOUND_PRESET_STONECORRIDOR - "korytarz z kamiennymi ścianami i podłogą"
  • FSOUND_PRESET_ALLEY - "aleja"
  • FSOUND_PRESET_FOREST - "las"
  • FSOUND_PRESET_CITY - "miasto"
  • FSOUND_PRESET_MOUNTAINS – „skały”
  • FSOUND_PRESET_QUARRY — „kamieniołom”
  • FSOUND_PRESET_PLAIN - "step"
  • FSOUND_PRESET_PARKINGLOT - "parking"
  • FSOUND_PRESET_SEWERPIPE — „rura kanalizacyjna”
  • FSOUND_PRESET_UNDERWATER – „pod wodą”
  • FSOUND_PRESET_DRUGGED - "spowolnił"
  • FSOUND_PRESET_DIZZY - "zawroty głowy"
  • FSOUND_PRESET_PSYCHOTIC – „psychotyczny”

Ustawianie i odczytywanie parametrów przestrzennych

Biblioteka FMOD wykorzystuje funkcje FSOUND_Reverb_SetProperties() i FSOUND_Reverb_SetChannelProperties() w celu przypisania określonych parametrów przestrzennych do źródła dźwięku przestrzennego. Aby uzyskać ustawione parametry, użyj funkcje odwrotne FSOUND_Reverb_GetProperties() i FSOUND_Reverb_GetChannelProperties(). Ustawienia pogłosu można również wprowadzać podczas odtwarzania dźwięku. Aby nowe parametry zaczęły obowiązywać, należy wywołać funkcję FSOUND_Update().

Funkcje FSOUND_Reverb_SetProperties () i FSOUND_Reverb_GetProperties () są przeznaczone odpowiednio do ustawiania i uzyskiwania ogólnych parametrów środowiska. Obie funkcje przyjmują jeden parametr - wskaźnik do struktury FSOUND_REVERB_PROPERTIES zgodnej ze specyfikacją EAX. W przypadku FSOUND_Reverb_SetProperties(), ten wskaźnik musi odnosić się do już zainicjowanej struktury wypełnionej wymaganymi wartościami liczbowymi. W przypadku FSOUND_Reverb_GetProperties(), wskaźnik wskazuje obszar pamięci przeznaczony do przechowywania wartości liczbowych. W przypadku sukcesu funkcje zwracają PRAWDA, w przeciwnym razie FAŁSZ.

/* Przykład ustawienia parametrów pogłosu */ FSOUND_REVERB_PROPERTIES props = FSOUND_PRESET_STONEROOM; if (!FSOUND_Reverb_SetProperties (&props)) ( /* obsługa błędów */ ... ); FSOUND_Update(); ...

Oddzielnemu źródłu dźwięku (kanałowi) można przypisać parametry modelu pogłosu (w tym takie jak przeszkoda i okluzja) za pomocą funkcji FSOUND_Reverb_SetChannelProperties() i odczytać je za pomocą FSOUND_Reverb_GetChannelProperties(). Funkcje te przyjmują dwa parametry. Pierwszym, podobnie jak w przypadku wszystkich funkcji FMOD, które działają z kanałami, jest numer kanału, przez który odtwarzany jest dźwięk. Drugi parametr jest wskaźnikiem do struktury FSOUND_REVERB_CHANNELPROPERTIES. Gdy wywoływana jest funkcja FSOUND_Reverb_SetChannelProperties(), musi ona adresować już zainicjowaną strukturę, a gdy wywoływana jest funkcja FSOUND_Reverb_GetChannelProperties(), wolne miejsce w pamięci jest wystarczające do przechowywania odebranych wartości. Dla funkcji FSOUND_Reverb_SetChannelProperties() biblioteka FMOD nie posiada presetów, więc wybór wartości liczbowych dla niektórych składowych struktury FSOUND_REVERB_CHANNELPROPERTIES spada na barki programisty.

/* Przykład ustawienia parametrów pogłosu */ /* dla osobnego źródła dźwięku */ ... kanał int; // numer kanału FSOUND_SAMPLE *samp = NULL; // wskaźnik do bufora dźwięku // inicjalizacja struktury niezbędnymi wartościami FSOUND_REVERB_CHANNELPROPERTIES channel_props = (... ); // ładowanie danych dźwiękowych samp = FSOUND_Sample_Load(FSOUND_FREE, "motor.wav", FSOUND_HW3D | FSOUND_LOOP_NORMAL, 0, 0); // otwarcie kanału odtwarzania channel = FSOUND_PlaySound(FSOUND_FREE, samp); // ustaw parametry pogłosu if (!FSOUND_Reverb_SetChannelProperties (kanał, &channel_props)) ( /* obsługa błędów */ ... ); FSOUND_Update(); ...

Przykład programu

Jako przykład pracy z funkcjami FMOD i systemem EAX podano program w języku programowania C (ANSI C), który tworzy aplikację Windows w postaci okna dialogowego, w którym można wybrać jeden z presetów z wyświetlić listę i posłuchać, jak zmienia się dźwięk źródła dźwięku przestrzennego. Po uruchomieniu aplikacji zostanie wyświetlone okno dialogowe umożliwiające wybranie pliku dźwiękowego. Dodatkowo aplikacja umożliwia podgląd parametrów karty dźwiękowej: obecność sprzętowej obsługi dźwięku 3D oraz EAX (oczywiście efekty dźwięku przestrzennego będą miały miejsce tylko jeśli karta dźwiękowa obsługuje EAX). Program jest napisany i skompilowany z wykorzystaniem pakietu lccwin32, ale programiście korzystającemu z innego środowiska programistycznego nie będzie trudno dostosować kod źródłowy do swoich potrzeb. Należy zauważyć, że FMOD zawiera kilka bibliotek (.lib), z których każda jest zaprojektowana dla własnego kompilatora.

  • fmodbc.lib — dla Borland C Builder
  • fmodlcc.lib — dla lccwin32
  • fmodvc.lib — dla Microsoft Visual C/C++
  • fmodwc.lib — dla Watcom C++

Proponowany przykład wykorzystuje funkcje Win32 API oraz biblioteki FMOD. Aby program działał, należy zainstalować na komputerze bibliotekę fmod lub umieścić plik biblioteki fmod.dll w folderze z plikiem wykonywalnym (eaxdemo.exe).

  • Nie zapomnij rozpakować plików.

Dźwięk odgrywa ważną rolę we współczesnych grach. Oczywiście miło jest zobaczyć piękny obraz na ekranie, ale dźwięk również odgrywa ważną rolę w tworzeniu klimatu. Przestrzeń nie ogranicza się przecież do obszaru, który wpada w pole widzenia bohatera. Rozsądne wykonanie pozwala usłyszeć różnicę w strzale z różnych rodzajów broni, określić czy przeciwnik jest w pomieszczeniu czy na zewnątrz. W gatunkach takich jak horror i sieciowe strzelanki trudno przecenić znaczenie zakresu dźwięku.

Chodzi o trójwymiarowy dźwięk, silniki, producentów, o których będziemy mówić w tym artykule przeglądowym.

Dźwięk 3D odnosi się do rozmieszczenia źródeł dźwięku wokół słuchacza.

Dźwięk 3D można podzielić na dwie części. Po pierwsze, jest to atmosfera (muzyka, efekty ogólne, pogłos - rodzaj pomieszczenia, otoczenie). Po drugie, ustawienie, aby gracz mógł określić, gdzie znajduje się źródło dźwięku, a najlepiej jego wysokość i wymiary.

Schematyczne przedstawienie, w jaki sposób efekty pogłosu pozwalają określić parametry pomieszczenia za pomocą słuchu

Różne technologie są stosowane w celu wzmocnienia wrażenia percepcji dźwięku przez słuchacza. To właśnie ich wysokiej jakości wykonanie sprawia, że ​​świat wokół gracza nie tylko emanuje jaskrawymi kolorami, ale także zamienia go w prawdziwie trójwymiarową przestrzeń.

Dziś istnieje kilka różnych dźwiękowe interfejsy API. Porozmawiamy o tych, które są nadal w użyciu lub mają wartość historyczną.

Bieżące interfejsy API dźwięku

OpenAL (otwarta biblioteka audio)

Ten interfejs API wykorzystuje efekty EAX. Ten interfejs jest używany w silnikach id Tech 3 i 4 (DOOM 3, Enemy Territory: Quake Wars, Prey, Quake 4, Wolfenstein), niektórych grach opartych na silniku Unreal Engine 3, a także w wielu innych projektach (Battlefield 2 , STALKER, F.E.A.R., FarCry, Time Shift i inne).


Co ciekawe, firma Creative zezwoliła jedynie na wykorzystanie zastrzeżonej technologii przetwarzania cieni firmy id Software w zamian za obsługę OpenAL w DOOM-ie 3.

OpenAL został opracowany wyłącznie przez programistów firmy Creative. Pełna realizacja większości istotne funkcje a funkcje OpenAL są dostępne tylko dla kart Creative w systemie Windows. W przypadku innych kart i systemów operacyjnych implementacja jest bardzo uproszczona, podstawowa. Dzieje się tak, ponieważ wymaga wsparcia sprzętowego, a tylko karty Creative mają procesor sprzętowy.

Tak więc, jeśli gra korzysta z OpenAL, dźwięk na zintegrowanym dźwięku na karcie dźwiękowej Creative będzie zupełnie inny. Oczywiście na korzyść tego drugiego. Jeśli karta dźwiękowa Creative nie posiada procesora sprzętowego, wówczas używana jest emulacja programowa do EAX 4.0, która nie jest dostępna dla kart innych producentów. Chociaż ta technologia emulacji może być licencjonowana za pieniądze nawet dla zintegrowanego dźwięku. Jednocześnie EAX 5.0 nie istnieje bez wsparcia sprzętowego. Rozwój OpenAL zatrzymał się w 2005 roku.

Bezpośredni dźwięk

Interfejs programistyczny będący częścią DirectX. Najstarszy i najpopularniejszy interfejs API. To API pozwala mieć słabą i zasobożerną implementację oprogramowania dźwięku 3D, której nikt nie używa w grach, ale pozwala na wykorzystanie sprzętowej implementacji istniejących efektów. Dlatego dźwięk różnych kart dźwiękowych DirectSound jest inny.

Interesujące jest to, że wywołania „sprzętowe” dla wielu kart są zaimplementowane w oprogramowaniu. Tak więc zintegrowany dźwięk często ma „sprzętowy” dźwięk 3D zaimplementowany w sterownikach. Ta implementacja bardzo różni się od rzeczywistej sprzętowej pod względem jakości i możliwości.

Wraz z wydaniem systemu Windows Vista i znaczącymi zmianami w jego architekturze DirectSound stracił obsługę dźwięku 3D. Był tu jeden problem: wiele gier, które zostały wydane przed wydaniem nowego systemu operacyjnego, pozostało bez efektów dźwiękowych. W 2007 roku Creative opracował technologię Creative ALchemy dla X-Fi i Audigy, która przechwytuje połączenia DirectSound i tłumaczy je na podobne polecenia OpenAL. Dzięki temu stare gry mają wsparcie dla dźwięku 3D i EAX w systemach operacyjnych Windows Vista i Windows 7. Dodatkowo ASUS oferuje Xonar GX2.5, który również pozwala emulować DirectSound w przestarzałych projektach. Emulacja ASUSa jest przewidywalnie gorsza ze względu na brak możliwości sprzętowych w kartach tego producenta, ponadto działa mniej stabilnie.


W pewnym momencie nabywcy systemu Windows Vista byli bardzo zdziwieni brakiem dźwięku 3D w grach. Jeden z wielu powodów, dla których zapaleni gracze wolno przestawiali się na nowy system operacyjny

Oprócz dźwiękowych interfejsów API istnieją również silniki dźwiękowe. To jak silniki graficzne, które są odpowiedzialne za wygląd Gry. Są to funkcje wysokiego poziomu, które znacznie upraszczają życie programistów. Na niskim poziomie silniki dźwiękowe wykorzystują podstawowe funkcje DirectSound lub innego interfejsu API wyjścia audio.

Najpopularniejsze silniki dźwiękowe

FMOD

Siedem lat temu FMOD był uważany za „młody i obiecujący”, a teraz aktywnie nabiera rozpędu. Jedną z cech jest wieloplatformowość (obsługa Xbox 360, Playstation 3 i Nintendo Wii) oraz możliwość pracy z różnymi formatami na różnych platformach. Wydano już wiele projektów wykorzystujących FMOD, w tym takie hity jak World of Warcraft, Bioshock 1 i 2, Starcraft 2: Wings of Liberty, Mafia 2 i inne. Zapowiedziano również Crysis 2, Deus Ex: Bunt Ludzkości, Wiedźmin 2: Zabójcy Królów.

MilesSS

MilesSS jest zdecydowanie najbardziej znanym istniejącym obecnie silnikiem dźwiękowym. Oficjalna strona twierdzi, że obsługuje 5000 gier. Na imponującej liście nie ma jednak tak wielu projektów z ostatnich kilku lat, choć są Call of Duty: Modern Warfare i Call of Duty: World at War. Ten silnik był używany przez Painkiller, Gothis i wiele innych popularnych gier. Ponadto Valve korzysta z biblioteki MSS w wersji 6.6a w silniku Source (Half-Life 2, Portal, Team Fortress 2, Left for Dead 1 i 2). Najnowsza wersja MilesSS jest datowana na październik 2008.

EAX (środowiskowe rozszerzenia audio)

Na koniec skupmy się na systemie EAX (Environmental Audio Extensions). EAX 5.0 jest teraz dostępny dla programistów i obsługuje wiele funkcji. W szczególności to właśnie ten system znajduje się w najpopularniejszym do tej pory silniku Unreal Engine 3. Ponadto w wielu grach można znaleźć EAX różnych wersji. Właściwe wykorzystanie potencjału tej technologii pozwala na tworzenie niesamowitych efektów dźwiękowych.

To właśnie EAX miał znaczący wpływ na rozwój kart dźwiękowych, przyczynił się do wprowadzenia wielu efektów tworzących niepowtarzalny klimat. Koneserzy pamiętają, że jedną z kluczowych cech kultowego już projektu Thief była nie tylko wyjątkowa mechanika gry, ale także niesamowity dźwięk. To właśnie ścieżka dźwiękowa pozwoliła umiejscowić każdy szelest, właściwie ocenić sytuację i zanurzyć się na oślep w świat złodzieja Garretta. Jak na ówczesne standardy był to prawdziwy przełom. Thief: The Dark Project była jedną z pierwszych gier, które pokazały, że dźwięk 3D i technologia EAX mają przyszłość.


Dzięki technologicznemu dźwiękowi Thief miał niesamowity klimat i był jednym z głównych powodów zakupu kart dźwiękowych Creative.

Specyfikacje różnych wersji EAX należy rozpatrywać oddzielnie.

EAX 1.0

  • Wsparcie sprzętowe dla 8 jednocześnie brzmiących kanałów.
  • Wsparcie sprzętowe dla 32 indywidualnych kanałów.
  • Sprzętowe renderowanie DSP.
  • Obsługuje zmianę miejsca w grze pogłosów i odbić.
  • Ma dużą liczbę presetów.
  • Umożliwia (ograniczoną) modyfikację pogłosu otoczenia.
  • Umożliwia automatyczną zmianę intensywności pogłosu w zależności od położenia źródła dźwięku względem słuchacza
  • Sound Blaster na żywo!
  • Nierealny
  • Nierealny turniej
  • Złodziej: Mroczny projekt

EAX 2.0

Funkcje w stosunku do poprzedniej wersji

  • Zaktualizowany model pogłosu.
  • Dodano efekty barier dźwiękowych (przeszkody) i absorpcji (okluzje).
  • Oddzielna kontrola wczesnych odbić i późnych pogłosów. Ciągła kontrola wymiarów pomieszczeń. Ulepszony model odległości do automatycznego sterowania pogłosami i początkowymi odbiciami w oparciu o lokalizację źródła dźwięku względem słuchacza.
  • Umiejętność uwzględnienia właściwości dźwiękowych powietrza (pochłanianie dźwięku).
  • Teraz, aby skorzystać z efektów Environmental Audio nie wymaga opisu geometrii pomieszczenia.

Kreatywne karty dźwiękowe obsługujące tę technologię

  • Sound Blaster na żywo! 5.1

Przykłady gier obsługujących tę technologię

  • Złodziej 2: Wiek metalu
  • okres półtrwania 2

EAX Advanced HD 3.0

Funkcje w stosunku do poprzedniej wersji

  • Wsparcie sprzętowe dla 64 pojedynczych kanałów.
  • Kontrola wczesnych pogłosów i odbić dla każdego źródła dźwięku.
  • Dynamiczne przejście między otaczającymi modelami.
  • Ulepszony model odległości do automatycznego sterowania pogłosem i początkowymi odbiciami w zależności od położenia źródeł dźwięku względem słuchacza.
  • Obliczenia Ray-Tracing (odbicia promieni) w celu uzyskania parametrów odbicia dla każdego źródła dźwięku.
  • Oddzielne odbicia dla odległych ech.
  • Ulepszona reprezentacja odległości zaprojektowana w celu zastąpienia statycznych modeli pogłosu.

Kreatywne karty dźwiękowe obsługujące tę technologię

  • Sound Blaster Audigy

Przykłady gier obsługujących tę technologię

  • Star Wars: Knights of the old Republic 2 – Lordowie Sithów
  • Splinter Cell Toma Clancy'ego
  • Unreal Tournament 2003

EAX Advanced HD 4.0

Funkcje w stosunku do poprzedniej wersji

  • Efekty sprzętowe w czasie rzeczywistym.
  • Wiele jednoczesnych środowisk.
  • Kołnierz (Flanger).
  • Echo (Echo).
  • Zniekształcenie (zniekształcenie).
  • Efekt modulacji pierścienia.

Kreatywne karty dźwiękowe obsługujące tę technologię

  • Sound BlasterAudigy2
  • Sound Blaster X-Fi Extreme Audio

Przykłady gier obsługujących tę technologię

  • STRACH.
  • GTA San Andreas
  • Medieval 2: Wojna totalna
  • Złodziej 3: Zabójcze cienie

EAX Advanced HD 5.0

Funkcje w stosunku do poprzedniej wersji

  • Wsparcie sprzętowe dla 128 indywidualnych kanałów z 4 efektami na kanał.
  • EAX Voice (przetwarzanie wejścia mikrofonowego).
  • EAX PurePath (poprawa dokładności pozycjonowania wirtualnych źródeł dźwięku).
  • Środowisko FlexiFX (4 gniazda efektów na kanał).
  • EAX MacroFX (realistyczne efekty pozycjonowania z bliskiej odległości).
  • Okluzja otoczenia (efekt sprawia wrażenie, że źródło dźwięku znajduje się w innym miejscu, za ścianą)

Kreatywne karty dźwiękowe obsługujące tę technologię

  • Wszystkie karty dźwiękowe z serii Sound Blaster X-Fi oprócz X-Fi Extreme Audio

Przykłady gier obsługujących tę technologię

  • bioszok
  • Pole bitwy 2
  • Doom 3

Wniosek z przedstawionego powyżej materiału nasuwa się sam, a mianowicie: cross-platform i łatwość użytkowania są niezbędne warunki dla sukcesu. Jednak w obecnej sytuacji, gdy wszyscy wydawcy (oprócz Microsoftu, Sony i Nintendo) wolą wydawać swoje gry na trzech (co najmniej dwóch) platformach jednocześnie, możliwość łatwego zastosowania funkcji zarówno na PC, jak i na konsolach staje się nie do przecenienia. dziobowy. FMOD, który zyskał popularność, jest tego najlepszym dowodem.

Producenci

Twórczy

Oczywiście, gdy mówimy o kartach dźwiękowych zorientowanych na gry, wielu osobom od razu przychodzi na myśl Creative. Przez prawie trzy dekady swojego istnienia producent wielokrotnie sprawiał miłośnikom dźwięku miłe niespodzianki, choć polityka cenowa firmy wywoływała niejednoznaczną reakcję. Teraz w asortymencie firmy znajduje się wystarczająca liczba produktów z serii X-Fi ze zwykłym interfejsem PCI Express i USB, od budżetowej kategorii cenowej po karty klasy premium.

Auzentech

Koreańska firma Auzentech produkuje karty dźwiękowe do gier oparte na chipie Creative X-Fi. Te produkty mają ciekawe cechy i nadają się zarówno dla audiofilów, jak i gier, ale niestety niewiele osób tutaj wie o tej firmie, a produkty te nie są tak łatwo dostępne w sklepach.

ASUS

Nie tak dawno na rynku kart dźwiękowych pojawił się kolejny gracz, obok którego trudno przejść obojętnie. To jest o o firmie ASUS, której nazwa była kojarzona z płytami głównymi, kartami graficznymi, laptopami, napędami optycznymi.

Te karty dźwiękowe zostały zaprojektowane i wyprodukowane przez zaprzyjaźnioną tajwańską firmę C-Media. ASUS działa wyłącznie jako klient OEM i sponsor rozwoju. Wiąże się z tym często niestabilna praca kart ASUS i skromne możliwości, co nie jest typowe dla innych produktów tego producenta.

Obecnie istnieje kilka serii kart dźwiękowych, wszystkie pod wspólną nazwą Xonar. Każda seria jest pozycjonowana pod inne potrzeby: jedna skupia się na grach, inna na oglądaniu filmów, trzecia na słuchaniu muzyki. W interesującej nas linii gier jest wystarczająco dużo modeli o bardzo kuszących cechach. Jednak karty ASUS nie oferują żadnej przewagi w grach nad zintegrowanym dźwiękiem. Implementacja oprogramowania wielu funkcji zawodzi, a poza tym nie jest najnowsza.

Nie wymienimy wszystkich producentów. Powodów jest wiele: brak odpowiedniej informacji ze strony firm, problemy z dostawą do Rosji oraz skupienie się na wąskim gronie profesjonalistów, a nie na szerokich rzeszach konsumentów. Dla graczy nie są one szczególnie interesujące.

Teraz producenci oferują szeroką gamę różnych kart dźwiękowych obsługujących nowoczesne efekty. Ze względu na przystępną cenę i dość demokratyczną politykę cenową kwestia zakupu osobnej karty dźwiękowej nie jest tak dotkliwa. Na przykład „gierska” karta dźwiękowa X-Fi Xtreme Gamer z prawdziwym sprzętowym procesorem dźwięku X-Fi kosztuje 80 USD, co nie jest dużo w porównaniu z kartami graficznymi, procesorami i innymi komponentami „do gier”.



Podobne artykuły