');background-size:contain;background-repeat:no-repeat;background-size:18px 18px;background-position:50% 50%}.mtt-fullscreen-tooltip-window{position:absolute;right:0;bottom:100%;margin-bottom:10px;background-color:#fff;padding:12px;border-radius:10px;max-width:300px;width:80vw;overflow:hidden;-webkit-animation:tooltip .3s ease;animation:tooltip .3s ease;font-family:Roboto,HelveticaNeue-Light,Helvetica Neue Light,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif}@-webkit-keyframes tooltip{0%{opacity:0;bottom:80%}to{opacity:1;bottom:100%}}@keyframes tooltip{0%{opacity:0;bottom:80%}to{opacity:1;bottom:100%}}.mtt-fullscreen-tooltip-token+.mtt-fullscreen-tooltip-advertiser{margin-top:5px}.mtt-fullscreen-tooltip-token{color:#4141ee;font-size:14px}.mtt-fullscreen-tooltip-advertiser{font-size:12px}.mtt-fullscreen-hidden{display:none}.mtt-fullscreen-overlay{z-index:1;position:fixed;top:0;bottom:0;right:0;left:0;background-color:rgba(0,0,0,.7)}.mtt-fullscreen-container{z-index:2;width:100%;height:100%;text-align:center;position:fixed;top:0;bottom:0;right:0;left:0}.mtt-fullscreen-container.mtt-centered{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media screen and (max-width:600px){.mtt-fullscreen-container.mtt-centered{width:430px;height:600px}}@media screen and (max-width:430px){.mtt-fullscreen-container.mtt-centered{width:410px;height:600px}}@media screen and (max-width:409px){.mtt-fullscreen-container.mtt-centered{width:375px;height:550px}}@media screen and (max-width:374px){.mtt-fullscreen-container.mtt-centered{width:360px;height:530px}}@media screen and (max-width:359px){.mtt-fullscreen-container.mtt-centered{width:320px;height:500px}}@media screen and (max-width:329px){.mtt-fullscreen-container.mtt-centered{width:320px;height:430px}}.mtt-fullscreen-image-container{position:fixed;top:0;bottom:0;right:0;left:0;padding:50px 5% 5%}.mtt-fullscreen-image-container *{-webkit-tap-highlight-color:transparent}.mtt-fullscreen-image{height:100%;width:100%;background-size:contain;background-position:50%;background-repeat:no-repeat;display:none}.mtt-fullscreen-container-html5{width:100%;height:100%;margin:0;padding:0;border:none;outline:none}@media (orientation:landscape){.mtt-fullscreen .mtt-fullscreen-image__landscape{display:block}}@media (orientation:portrait){.mtt-fullscreen .mtt-fullscreen-image__portrait{display:block}}@media screen and (max-width:600px){.mtt-fullscreen div[class*=yandex_rtb_R-A]{width:430px;height:600px}}@media screen and (max-width:430px){.mtt-fullscreen div[class*=yandex_rtb_R-A]{width:410px;height:600px}}@media screen and (max-width:409px){.mtt-fullscreen div[class*=yandex_rtb_R-A]{width:375px;height:550px}}@media screen and (max-width:374px){.mtt-fullscreen div[class*=yandex_rtb_R-A]{width:360px;height:530px}}@media screen and (max-width:359px){.mtt-fullscreen div[class*=yandex_rtb_R-A]{width:320px;height:500px}}@media screen and (max-width:329px){.mtt-fullscreen div[class*=yandex_rtb_R-A]{width:320px;height:430px}}
The xAct packages follow a version system formed by a number (like 0.9.8) and a date (in Wolfram Language notation: <2008, 11, 23>stands for 23 November 2008). The packages cross-check their dates to ensure consistency.
The current version of the system is 1.1.4 of 16 February 2020. All packages are downloaded together as a single file
xAct_1.1.4.tgz for unix/linux/mac
xAct_1.1.4.zip for MS windows
An exceptions is the database of identities of the Invar package, which has to be downloaded separately because of its large size. Contributed packages can be downloaded from http://contrib.xact.es
Installation
Read the Installation Notes provided with the packages.
Previous versions
1.1.3 (of 28 February 2018)
1.1.2 (of 23 August 2015)
1.1.1 (of 28 September 2014)
1.1.0 (of 15 February 2014)
1.0.5 (of 27 January 2013)
1.0.4 (of 5 May 2012)
1.0.3 (of 25 October 2011)
1.0.2 (of 15 July 2011)
1.0.1 (of 17 April 2011)
1.0.0 (of 30 September 2010)
0.9.9 (of 9 September 2009) «Chus version»
0.9.8 (of 23 November 2008)
0.9.7 (of 11 August 2008)
0.9.6 (of 30 June 2008)
0.9.5 (of 16 May 2008)
0.9.4 (of 5 March 2008)
0.9.3 (of 6 November 2007)
0.9.2 (of 15 August 2007)
0.9.1 (of 29 January 2007)
0.9.0 (of 4 December 2006)
0.8.0 (of 7 July 2006)
0.7.7 (of 30 June 2005)
0.7.0 (of 4 March 2004)
Лучшие инструменты Microsoft для администраторов и опытных пользователей Windows 10
В некоторых случаях компания официально даже не объявляла о выходе новой утилиты, и пользователи самостоятельно находили новинки в системе.
В данной статье мы собрали список новых приложений и инструментов, которые пригодятся опытным пользователям для получения расширенного контроля над Windows 10.
Сниффер сетевых пакетов Pktmon
В Windows 10 есть встроенный сниффер сетевого трафика под названием Pktmon. Данный инструмент был внедрен в систему еще в обновлении Windows 10 October 2018 Update. Он позволяет пользователям отслеживать сетевую активность приложений и диагностировать потенциальные проблемы с сетью.
В Windows 10 May 2020 Update (версия 2004) Microsoft добавила в Pktmon две дополнительные функции: просмотр перехваченных пакетов в реальном времени и преобразование журналов Pktmon в дамп PCAPNG. В новых версиях Pktmon вы можете включить мониторинг в реальном времени с помощью аргумента -l real-time.
Поскольку дампы сетевых пакетов PCAPNG поддерживаются во многих программах для мониторинга сети, таких как Wireshark, то пользователям теперь доступны дополнительные возможности для анализа журналов.
Пакетный менеджер Winget
В прошлом году Microsoft выпустила менеджер пакетов для Windows 10 под названием Winget. Данный инструмент позволяет устанавливать и управлять приложениями непосредственно из командной строки.
Чтобы установить программу с помощью Winget, введите команду winget search для поиска приложений и winget install для его установки.
Microsoft создала репозиторий с тщательно отобранными приложениями, которые можно установить с помощью Winget.
При поиске вы можете использовать ключевые слова. Например, если вы хотите найти альтернативу системному блокноту, используйте поиск по слову «note»:
Вам будет предложено установить Notepad ++ и другие приложения с «note» в названии. Если вы хотите увидеть список всех доступных пакетов, наберите команду winget search без каких-либо аргументов.
Подсистема Windows для Linux 2 (WSL2)
Windows 10 теперь поставляется с новой подсистемой Windows для Linux 2, которая включает улучшения производительности и улучшенную совместимость с более широким спектром приложений Linux.
WSL2 получила полноценное встроенное ядро Linux на базе версии 4.19 с Kernel.org. WSL 2 также обеспечивает полный доступ к стандартным системным вызовам, улучшает совместимость приложений Linux, увеличивает производительность файловой системы и многое другое.
WSL2 предлагает следующие функции:
Полноценное ядро Linux
Улучшенная производительность операций ввода-вывода
Полная совместимость с системными вызовами
Оптимизация потребления памяти при запуске
Если вы используете старую версию WSL, то вы можете обновиться до WSL2 можно с помощью команды wsl —set-version.
Windows File Recovery tool
В Windows 10 интегрирован инструмент командной строки Windows 10 File Recovery, который позволяет восстанавливать удаленные файлы с жесткого диска, USB-накопителя и SD-карты.
Инструмент поможет в случаях, когда вы случайно удалили важный файл, по ошибке очистили жесткий диск или хотите восстановить поврежденные данные. Он представляет собой файл командной строки с именем winfr.exe.
Windows 10 File Recovery поддерживает два режима восстановления:
Regular (обычный) – это возможность быстрого восстановления для файловых систем NTFS.
Extensive (расширенный) – это тщательный поиск, который применяется к большинству файловых систем.
Microsoft Powertoys
Microsoft PowerToys — это набор инструментов с открытым исходным кодом, которые позволяют расширить возможности проводника, оптимизировать окна приложений для больших мониторов, изменять размер изображений и выполнять другие задачи.
На данный момент набор утилит включает следующие инструменты:
Изменения размера изображений
Настройка области предварительного просмотра Проводника
Панель Powertoys, которую можно использовать вместо поиска
Диспетчер клавиатуры для изменения горячих клавиш
Расширенное переименование
Цветоподборщик
Windows Terminal
Windows Terminal — консольная программа с открытым исходным кодом с поддержкой вкладок, которая позволяет работать сразу с несколькими оболочками и консольными интерфейсами в Windows 10.
Например, в одной вкладке Windows Terminal можно открыть PowerShell, а в другой работать с оболочкой WSL2 Ubuntu.
Программа может похвастаться поддержкой гиперссылок, поддержкой мыши, фонов рабочего стола и возможностью отображать команды с клавиатуры.
В последней версии Windows Terminal Preview вы можете включить новую страницу настроек с графическим интерфейсом.
Если вы привыкли работать с консольными интерфейса, то вы полюбите Windows Terminal.
PowerShell 7
В PowerShell 7 Microsoft представила ряд новых функций, включая автоматические уведомления о новых версиях и поддержку структурированных данных форматов JSON, CSV, XML.
параллелизация конвейера с помощью ForEach-Object -Parallel
новые операторы:тернарный оператор a ? b : c
операторы сцепления конвейеров || и && ;
условные операторы со значением NULL ?? и ??=
упрощенное динамическое представление ошибок и командлет Get-Error для более легкого анализа ошибок
уровень совместимости, позволяющий пользователям импортировать модули в рамках неявного сеанса Windows PowerShell
автоматические уведомления о новых версиях
возможность вызывать ресурсы DSC непосредственно из PowerShell 7 (экспериментальная функция).
PowerShell 7 доступен для скачивания из магазина Microsoft Store.
Windows Sysinternals Tools
Windows Sysinternals Tools — набор бесплатных утилит, разработанных компанией «Winternals Software LP», которую Microsoft приобрела в 1996 году, позволяет опытным пользователям диагностировать и устранять неполадки и управлять операционной системой.
Одна из самых популярных утилит набора Process Explorer предоставляет подробный список запущенных процессов и их загруженных дескрипторов и библиотек DLL. Используя этот список процессов, вы можете быстро найти проблемные и ресурсоемкие процессы и при необходимости завершить их работу.
Среди расширенных функций Process Explorer: возможность отслеживать проблемы с версиями DLL и обрабатывать утечки. Инструмент удобен при проверке подозрительных процессов, которые могут оказаться вредоносными.
Другой инструмент в составе набора Process Monitor отслеживает активность запущенных процессов в файлах, а утилита Sysmon позволяет отслеживать различные действия на компьютере. С помощью Sysmon вы можете обнаружить попытки вмешательства в процессы, регистрировать данные, копируемые в буфер обмена Windows, вести журнал запросов DNS и автоматически создавать резервные копии удаленных файлов.
Software » MacOS Video » xAct 2.50
Search or Browse all software by sections
Description
xACT (short for X Audio Compression Toolkit) is a free software audio utility for Mac OS X. It handles compression and decompression between various lossless audio formats, secure CD ripping, and is a graphical interface for the Unix applications Shorten, shntool, Monkey’s Audio, FLAC, and cdda2wav.
2.50 (June 8, 2020)
Download
Download old versions
Freeware (Free download and usage!)
Supported operating systems
Mac OS
Version history / Release notes / Changelog
2.50 (build 8446) 06/08/2020
-Converting AIFF > Wav and WAV > AIFF will now copy tags -Batch Rename can rename based off tags in the file. Hover over Prefix textbox to see how
Sections/Browse similar tools
MacOS Video Tools
Guides and How to’s
xAct video tutorials
Notify me when software updated or report software
1 reviews, Showing 1 to 1 reviews
1 reviews, Showing 1 to 1 reviews
1 tool hits, Showing 1 to 1 tools
Explanation: NEW SOFTWARE = New tool since your last visit NEW VERSION = New version since your last visit NEW REVIEW = New review since your last visit NEW VERSION = New version
Latest version Version number / Beta version number / Update version number and when it whas released.
Type and download NO MORE UPDATES? = The software hasn’t been updated in over 2 years. NO LONGER DEVELOPED = The software hasn’t been updated in over 5 years. RECENTLY UPDATED = The software has been updated the last 31 days. Freeware = Download Free software. Freeware Trialware = Download Free software but some parts are trial/shareware. Free software = Download Free software and also open source code also known as FOSS (Free and Open Source Software). Free software Trialware = Download Free software and also open source code but some parts are trial/shareware. Freeware Ads = Download Free software but supported by advertising, usually with a included browser toolbar. It may be disabled when installing or after installation. Free software Ads = Free Download software and open source code but supported by advertising, usually with a included browser toolbar. It may be disabled when installing or after installation. Trialware = Also called shareware or demo. Free Trial version available for download and testing with usually a time limit or limited functions. Payware = No demo or trial available. Portable version = A portable/standalone version is available. No installation is required. v1.0.1 = Latest version available. Download beta = It could be a Beta, RC(Release Candidate) or an Alpha / Nightly / Unstable version of the software. Download 15MB = A direct link to the software download. Win = Windows download version. It works on 32-bit and 64-bit Windows. Win64 = Windows 64-bit download version. It works only on 64-bit Windows. Mac = Mac download version. It works on 32-bit and 64-bit Mac OS. Mac64 = Mac OS download version. It works only on 64-bit Mac OS. Linux = Linux download version. Portable = Portable version. No installation is required. Ad-Supported = The software is bundled with advertising. Be careful when you install the software and disable addons that you don’t want! Visit developers site = A link to the software developer site. Download (mirror link) = A mirror link to the software download. It may not contain the latest versions. Download old versions = Free downloads of previous versions of the program. Download 64-bit version = If you have a 64bit operating system you can download this version. Download portable version = Portable/Standalone version meaning that no installation is required, just extract the files to a folder and run directly. Portable version available = Download the portable version and you can just extract the files and run the program without installation. Old versions available = Download old versions of the program. Version history available = Complete changelog on our site. = Windows version available. = Mac OS version available. = Linux version available. Our hosted tools are virus and malware scanned with several antivirus programs using www.virustotal.com.
Rating Rating from 0-10.
Microsoft xact для windows 10
Не так давно XACT предназначалась только для разработчиков под Xbox 360 и получить ее было не так просто. Вы должны были быть сертифицированным разработчиком для Xbox 360 и иметь доступ к XDK (Xbox Development Kit). Не слишком простая штука, даже для профессиональных разработчиков игр, работающих в индустрии много лет, если вы спросите меня.
Но все изменилось. Год назад Microsoft решила включить XACT в DirectX SDK и хотя немногие использовали ее в предназначенных только для PC играх, сейчас XACT становится важной для разработки игр XNA. Это единственный способ получить любые звуковые файлы для XNA на Xbox 360. Вам не надо устанавливать DirectX SDK чтобы получить доступ к утилите XACT; она также включена в комплект установки XNA Game Studio Express. Вы найдете ее в Start (Пуск) | All Programs (Все программы) | Microsoft XNA Game Studio Express | Tools | XACT Auditioning Utility. Если вы используете другую версию XACT, пожалуйста, убедитесь, что она поддерживается XNA; например, в версию August 2006 DirectX SDK входит XACT той же версии 2.0, но файлы содержимого сохраняются в формате версии 40. Версия October 2006 DirectX SDK и XNA Framework используют файлы содержимого версии 41, которая не совместима с предыдущими версиями. Если вы загрузите старые версии звуковых проектов XACT, то можете встретиться с очень странными ошибками, такими как отсутствие файлов или исключение InvalidOperationException. Будущие версии также могут вести себя по другому. Чтобы убедиться, что ваш проект XACT поддерживается, проверьте версию содержимого в файле .xap (который является простым текстовым файлом; вы можете открыть его в любом редакторе).
Файл .xap структурирован простым образом и очень похож на xml-файлы. Номер версии может вас немного запутать, но вам надо только проверить, что у вас версия 13 (которая соответствует версии содержимого 41 в утилите XACT и может быть проверена в диалоговом окне About, как показано на рис. 9.4). Старые версии, такие как 11 и 12 (из старых DirectX SDK) не поддерживаются. Эта проблема может также произойти, если вы открываете ранний проект XNA оставшийся с бета-времен XNA (с августа по октябрь 2006 года), в которых применялась старая утилита XACT.
Если вы хотите сделать простое изменение громкости какого-либо звука из вашего проекта XACT внутри Visual Studio вам достаточно открыть файл .xap в текстовом редакторе Visual Studio и самому отредактировать значение вместо того, чтобы сворачивать Visual Studio, искать файл .xap , открывать его, искать правильное местоположение, где хранится громкость и изменять значение с помощью утилиты XACT.
Лучше всего, если у вас, разработчика игры, есть кто-то занимающийся для вас звуковыми эффектами и музыкой. Попробуйте объяснить работу с утилитой XACT этому человеку, и вам вообще больше не придется беспокоиться о звуках, громкости и форматах. Это дело специалиста по звуку. К сожалению, в большинстве небольших команд нет отдельного человека для звука, а если вы сами программируете, создаете свою графику и другие файлы игрового содержимого, то должны будете также создать и свои звуковые эффекты. Попробуйте сначала использовать существующие звуковые эффекты или свободно распространяемые звуки, а позже заменить их. Для музыки часто имеет смысл выбрать подходящую музыку, может даже из вашей библиотеки MP3, но только для тестирования и показов вашей игры. Конечно, в финальной версии вам необходимо вставить свою собственную музыку; вы не можете так взять чью-нибудь музыку и поместить ее в свою игру. Некоторые музыкальные файлы можно свободно использовать, но большинство музыки, которую вы слышите каждый день, нельзя использовать бесплатно. Получить файлы звуковых эффектов несколько проще. Для некоторых простых звуковых эффектов вам разрешается использовать файлы звуковых эффектов из примеров игр из этой книги. Я также предлагаю поискать свободно распространяемые звуковые эффекты на сайтах в Интернете, если у вас нет никаких собственных файлов звуковых эффектов и вы не знаете, кто мог бы помочь вам.
Чтобы вам было интереснее, здесь мы создадим звуковой проект для игры, которая будет создана в конце части III этой книги: XNA Shhoter, являющейся простой игрой в стиле «убей их всех» с крутой трехмерной графикой, звуковыми эффектами и поддержкой клавиатуры, мыши и игрового пульта Xbox 360 (что мы подробнее обсудим в следующей главе).
Создание проектов
Открыв утилиту XACT, вы увидите новый пустой проект (рис. 9.5). Он пока еще не содержит никаких звуковых файлов, волновых или звуковых банков, но в каждом новом проекте для вас сразу создаются несколько переменных и параметров:
Дерево проекта, всегда содержащее одни и те же корневые элементы. Вы не можете менять его.
Две предлагаемые по умолчанию категории: Default и Music, которые вы можете использовать, чтобы помечать ваши звуковые файлы как звуковые эффекты или музыку, делая поведение ваших звуковых файлов различным.
Одна глобальная переменная, SpeedOfSound, которая всегда равна 343.5, и четыре переменных для экземпляров реплик: Distance, DopplerShift, NumberOfCue и OrientationAngle. Все эти переменные важны только для трехмерных звуков, которые, к сожалению, пока невозможны в XNA. Подробнее этот вопрос мы обсудим когда будем писать код для воспроизведения звуковых эффектов.
Глобальные предустановки пути эффекта, в которых ничего не задано.
Все прочие корневые элементы пусты. Вы можете сами создавать дочерние элементы для каждого из них, щелкнув по кнопке на панели инструментов или щелкнув правой кнопкой мыши по элементу и выбрав New. Например, New Wave Bank создает новый волновой банк.
Чтобы поместить любые файлы WAV в ваш новый проект XACT, вам надо сначала создать волновой банк, который хранит в себе все волновые файлы, загружаемые и используемые затем вашей игрой. Это требует больше работы, чем простая загрузка файла WAV самостоятельно, но идеей, лежащей в основе XACT, было предоставление создателю звукового оформления большей гибкости в самостоятельной установке всевозможных звуковых параметров, вместо того, чтобы ворчать на программиста, каждый раз, когда ему захочется подрегулировать какой-нибудь звуковой эффект. Это не слишком поможет вам, когда вы сами должны и работать с XACT и программировать, но XACT придаст вашему проекту большую организованность в части звуковых файлов, и вы всегда будете знать, где можно изменить любые звуковые параметры без необходимости лезть внутрь вашего игрового кода. Недостаток использования XACT в том, что вы больше не сможете динамически загружать звуковые файлы; все файлы содержимого (подобно скомпилированным моделям) создаются и загружаются, когда вы запускаете вашу игру, и, пока игра запущена, к ним ничего не может быть добавлено. Подобная непреклонность сначала очень огорчала меня, поскольку я всегда добавлял ресурсы динамически, пока писал и отлаживал мои тестовые модули, но после того, как я начал работать с этим, все стало прекрасно. Теперь я создаю все звуковые файлы и проект XACT на ранних стадиях проекта и в тестовых модулях использую только существующие звуки. Позднее звуковой проект может время от времени меняться.
Создание волнового банка
Чтобы создать волновой банк для вашего проекта вы можете либо щелкнуть правой кнопкой мыши по узлу Wave Bank и выбрать из меню New Wave Bank, либо воспользоваться значком создания волнового банка на панели инструментов (восьмой элемент, оранжево-белый прямоугольник с волновым эффектом; см. рис. 9.5). Волновой банк это всего лишь хранилище для всех звуковых файлов, которые вы хотите использовать. У вас даже может быть несколько различных волновых банков; например, если в вашей игре несколько уровней, и вы хотите загружать только волновые файлы текущего уровня, вы должны разделить волновые файлы и таким образом оптимизировать вашу игру. Все проекты из этой книги и вообще все проекты, которые я когда-либо делал, содержат только один волновой банк, и я думаю, что за исключением разделения музыкальных и звуковых файлов для поддержки потокового воспроизведения музыки, наличие нескольких волновых банков не важно, и вам тоже, скорее всего, не понадобится.
После создания волнового банка вы можете перетащить в него файлы WAV, или, как альтернативный способ, использовать команду Insert Wave Files из контекстного меню. Рис. 9.6. показывает все звуковые файлы, которые вы собираетесь использовать для игры XNA Shooter, импортированные в ваш только что созданный проект XACT.
Как видите, все звуковые файлы пока остаются неиспользуемыми, что показывается использованием красного курсива для отображения их данных. Как только вы добавите эти волновые файлы в звуковой банк, они станут зелеными. Но перед тем как делать это, вы должны убедиться, что для всех файлов заданы правильные параметры. По умолчанию никакое сжатие не выбрано и большинство звуковых файлов достаточно малы; исключение составляет файл музыки, все остальные звуковые эффекты занимают менее 1 Мбайт. Файл музыки, отхвативший огромные 36 Мбайт дискового пространства, имеет длительность три с половиной минуты и хранится в обсуждавшемся ранее формате (16 бит, 44 кГц, стерео, PCM).
Если вы хотите сжать звуковой файл с музыкой, щелкните по нему и выберите желаемые предустановки сжатия в панели свойств волнового файла. Сейчас вы видите none, но если вы щелкнете по выпадающему списку, вам не будет предложено никаких иных вариантов. Сначала вы должны создать предустановки сжатия (compression preset), и лишь затем сможете использовать их для любых волновых файлов как пожелаете (или просто назначить их всему волновому банку в целом). Подобным образом XACT работает и с другими предустановками. Например, если вы захотите создать собственную переменную для звукового эффекта, вам надо будет сначала создать ее в разделе переменных, и лишь затем вы сможете выбрать и использовать ее в звуковом банке.
Сжатие музыкальных данных
Чтобы создать новые предустановки сжатия щелкните по узлу Compression Presets и выберите New Compression Preset (рис. 9.7). Теперь в поле Name введите имя для вашего сжатия; в данном случае мы хотим создать схему сжатия музыки. Поле Notes предназначено только для вас и не используется нигде вне утилиты XACT. Многие другие панели также имеют поля для примечаний и необязательные параметры, которые вам не нужны. Вы, вероятно, найдете XACT очень запутывающим, когда начнете использовать его. Я тоже сначала не любил его, но через некоторое время вы привыкнете, и вы должны помнить, что это единственный способ получить какие-либо звуковые эффекты на Xbox 360 с XNA. Если вы создаете игры только для Windows, можно по-прежнему использовать DirectSound или другие звуковые движки, которые могут быть проще в использовании или иметь другие преимущества. И, наконец, установите сжатие для Windows (доступно только ADPCM) со 128 выборками на блок (значение по умолчанию). Большие значения сделают файл меньше, но вы потеряете в качестве. Тридцать две выборки на блок — это наивысшее качество ADPCM, но файл станет примерно на 30% больше.
Для Xbox 360 вы можете выбрать только XMA, но сжатие здесь гораздо лучше. Вы можете задаться вопросом, почему здесь так много вариантов, когда вы в любом случае можете выбрать только один формат сжатия. Это XACT, и все мы можем только надеяться, что в будущем получим больше форматов сжатия. XMA замечательно подходит для Xbox 360; иногда он производит файлы, размер которых кажется немного великоват, но они хорошо звучат и замечательно работают. ADPCM для платформы Windows практически непригоден. Звук хуже чем у файлов MP3, а сами файлы в 4 – 5 раз больше. Было бы хорошо добавить здесь поддержку WMA или MP3.
К сожалению, XACT не показывает сразу итоговый размер файла для XMA. Вы должны сперва скомпилировать проект, и только тогда увидите насколько сжат каждый волновой файл в формате XMA для Xbox 360. Для компиляции проекта можно щелкнуть по последней кнопке на панели инструментов или просто нажать F7. По умолчанию проект компилируется для платформы Windows, и вы по-прежнему не увидите результатов сжатия XMA. Чтобы наконец получить результат, переключите в меню View выходной формат на Xbox 360, скомпилируйте проект XACT, и ваш волновой банк будет показывать размеры файлов также и для Xbox 360 (коэффициент сжатия для PC показывается всегда и всегда один и тот же; 27% для параметров ADPCM по умолчанию).
Приведенная ниже таблица показывает процент сжатия для файла XnaShooterGameMusic.wav (размер несжатого файла 36 Мбайт).
Сжатие
Размер файла
Процент сжатия
Несжатый
36 Мбайт
100%
MP3, 192 кбит
4.8 Мбайт
13%
MP3, 128 кбит
3.1 Мбайт
8.5%
AccPlus, 48 кбит, подобно MP3, 192 кбит
1.2 Мбайт
3%
AccPlus, 24 кбит, подобно MP3, 96 кбит
0.6 Мбайт
1.6%
OGG, 160 кбит
3.8 Мбайт
11%
XACT ADPCM 32 выборки на блок
12.5 Мбайт
34%
XACT ADPCM 128 выборок на блок (по умолчанию)
9.9 Мбайт
27%
XACT ADPCM 512 выборок на блок
9.3 Мбайт
26%
XACT XMA 100% качество
14.3 Мбайт
40%
XACT XMA 90% качество
8.9 Мбайт
25%
XACT XMA 75% качество
5.5 Мбайт
15%
XACT XMA 60% качество (по умолчанию)
4.7 Мбайт
13%
XACT XMA 30% качество
3.5 Мбайт
10%
XACT XMA 10% качество
2.9 Мбайт
8%
По размеру файлы XMA с низким качеством очень похожи на MP3, но качество их гораздо хуже. Я не рекомендую использовать файлы XMA с очень низкими параметрами сжатия. Используйте 50% или выше; размеры файла будут почти такими же при 60% (значение по умолчанию) и 75%, моем любимом варианте, поскольку он обеспечивает очень хорошее качество и файл остается достаточно небольшим (примерно на 15% больше, чем MP3, 192 кбит, с похожим качеством звука). Если в вашей игре нет музыки, или вы используете только одну музыкальную дорожку, все это не имеет большого значения для вас, но когда в вашей игре 10 музыкальных дорожек или еще больше, вы должны дважды подумать о параметрах сжатия и исследовать все возможности.
После установки нового формата сжатия для файла музыки вы должны получить файл размером около 5 – 6 Мбайт в каталоге Xbox и 10 Мбайт в каталоге Win (рис. 9.8). Для проекта Rocket Commander XNA размеры этих файлов почти в два раза больше, поскольку там используется два файла с музыкой. В следующих играх из этой книги используется еще больше музыки, и размеры файлов будут еще больше.
Звуковые банки
Хотя вы можете скомпилировать проект и даже загрузить его в вашу игру XNA, вы еще не можете использовать никакие звуки, поскольку проект XACT сейчас только хранит волновые файлы. Но для воспроизведения вам нужны звуковые реплики, которые сначала должны быть созданы в звуковом банке. И снова здесь у вас есть возможность создавать несколько звуковых банков, но, вероятно, вам никогда не потребуется делать это.
Простейший способ заставить все волновые файлы работать — это перетащить их в ваш звуковой банк. Но подождите, а где звуковой банк? У вас его пока нет. Вы должны сначала создать его, точно также как и волновой банк. Вы можете сделать это щелкнув по элементу Sound Banks или щелкнув по второму оранжевому значку на панели инструментов (с оранжевой волной, выходящей с правой стороны из оранжево-белой коробки). Новый звуковой банк будет назван Sound Bank; если у вас один волновой банк и один звуковой банк, оставьте им имена по умолчанию. Если у вас несколько волновых или звуковых банков, вы должны давать им подходящие имена, чтобы потом их было проще искать.
Чтобы перетащить все волновые файлы из волнового банка в ваш звуковой банк, вы должны разместить окна таким образом, чтобы они оба были полностью видны. Окно звукового банка состоит из двух частей: имен звуков вверху и имен реплик внизу. Выберите все файлы из волнового банка и перетащите их в секцию имен звуков звукового банка (рис. 9.9). Каждый звук здесь может получить дополнительные параметры, такие как изменение громкости, частоты (высоты тона) или применение других вариаций или эффектов. Вы можете несколько раз добавлять один и тот же волновой файл, давая звукам различные имена. Для более сложных игр вы можете даже смешивать несколько волновых файлов в нескольких дорожках и добавлять их одну поверх другой, а затем воспроизводить этот «коктейль» вместо волнового файла. Чтобы у звука было больше одной дорожки, просто перетащите другой файл поверх первого и XACT автоматически создаст для него вторую дорожку. Однако в данной главе вы не будете использовать эту возможность.
Редактируя звуки в звуковом банке, вы должны убедиться, что музыке (XnaShooterGameMusic) назначена категория Music вместо Default (вы можете сделать это в панели свойств звука слева). Я также обычно устанавливаю для категории музыки более тихое воспроизведение звука, чем для звуков по умолчанию, поскольку хочу, чтобы музыка была более фоновой. В вашей игре вы можете использовать категорию музыки для управления громкостью музыки как пожелаете. Кроме того, вы, может быть, захотите обеспечить, чтобы одновременно воспроизводился только один музыкальный файл (может быть, вы несколько раз вызываете метод StartMusic, или у вас несколько файлов с музыкой и вы не хотите останавливать и перезапускать их самостоятельно).
Для оптимального воспроизведения музыки вы должны поместить в произвольном порядке все музыкальные файлы, которые хотите воспроизводить в конкретной части игры, в один элемент звукового банка (например, MenuMusic и GameMusic; смотрите в качестве примера Rocket Commander XNA). Затем щелкните Play Wave на правой стороне окна звукового банка, когда выбран элемент музыкального сопровождения. Здесь вы можете принудительно зациклить этот звук; некоторые звуки уже зациклены, но для музыки всегда лучше делать принудительное зацикливание, чтобы гарантировать, что все музыкальные файлы будут хорошо работать.
И, наконец, вы должны удостовериться, что только один музыкальный файл воспроизводится в конкретный момент времени, и, если выбран другой музыкальный файл, уместен будет красивый эффект затухания. К счастью, XACT предоставляет все это вам. Вы можете сейчас установить ограничения и длительность затухания/нарастания для каждого отдельного музыкального файла, либо вы можете поступить умнее и установить все один раз для категории Music (рис. 9.10). По умолчанию значение LimitInstances равно false; как только вы установите true, станут активными свойства ниже. Если сейчас вы попытаетесь воспроизвести другой музыкальный элемент, в то время когда какой-нибудь музыкальный элемент уже запущен, то получите исключение, поскольку для BehaviorAtMax установлено значение FailToPlay. Замените его на Replace для правильного поведения при воспроизведении музыки. Остальные параметры смотрите на рис. 9.10.
Переменные реплик
Если хотите, можете скомпилировать проект еще раз, но в вашем коде XNA по-прежнему нет доступа к каким-либо звуковым эффектам. XNA позволяет вам доступ только к звуковым репликам, которые надо сперва создать. Этот этап очень прост — выберите все звуки и перетащите их в секцию реплик окна звукового банка. Имена будут автоматически взяты из имен файлов, но вы, если пожелаете, можете переименовать любой элемент. Я обычно переименовываю звуковые файлы, чтобы сделать немного проще доступ к ним в XNA.
Другая замечательная возможность, которую вы используете для игры XNA Shooter, — возможность назначать несколько звуковых эффектов одной единственной звуковой реплике. Вы используете эту возможность для звукового эффекта взрыва. У вас есть три волновых файла взрыва, но для простоты вы хотите только сказать XACT, что надо воспроизвести взрыв, и пусть она случайным образом выберет для вас один из этих звуков. Для этого удалите из списка реплик звуковые реплики Explosion2 и Explosion3, выделив их и нажав клавишу Del. Затем переименуйте реплику Explosion1 просто в Explosion. И, наконец, перетащите звуки Explosion2 и Explosion3 на звуковую реплику Explosion. Вы должны увидеть результат, показанный на рис. 9.11. Совет: чтобы редактирование было чуть проще, увеличьте окно звукового банка или разверните его на весь экран. XACT иногда будет портить вам жизнь, и, когда полосы прокрутки то появляются, то исчезают, вы можете поместить элемент не на то место или против желания продублировать элементы (со мной это происходит постоянно).
Вы можете заметить, что я переименовал звуковую реплику игровой музыки в GameMusic, чтобы в коде XNA было проще вводить ее имя. Также убедитесь, что у всех остальных звуковых реплик имена просты для запоминания.
После очередной компиляции проекта вы можете использовать проект XACT в XNA и обращаться ко всем звуковым репликам. Обратите внимание, что вам не надо все время самостоятельно компилировать проект XACT в утилите XACT; XNA автоматически делает это за вас, если вы добавили файл проекта .xap в ваш проект XNA Game Studio. В качестве альтернативы вы можете просто добавить скомпилированные файлы и самостоятельно загружать их в XNA. Не имеет значения, как вы поступите, но, конечно, файл .xap в вашем проекте XNA — это наиболее удобное решение. Однако, при использовании XACT, я рекомендую периодически нажимать F7 для компиляции проекта, точно так же как вы постоянно проверяете только что написанный тестовый модуль, пока он не будет прекрасно работать.
Другие эффекты
XACT позволяет вам устанавливать другие эффекты и звуковые параметры, что особенно полезно для трехмерных звуковых эффектов, где вы можете устанавливать все виды параметров для ваших звуков. Комбинируя их с небольшим количеством собственного кода вы можете делать очень мощные вещи, такие как изменение звуковых эффектов, в зависимости от местоположения их воспроизведения, и автоматическое определение залов или открытых пространств по трехмерной геометрии. Ваш движок может также искажать эффекты, если они воспроизводятся под водой, или после того, как рядом с игроком взорвалась граната. Возможности безграничны.
Для небольших игр вам не потребуются никакие специальные эффекты, но в качестве примера я покажу вам, как создать собственную переменную, которая позволит изменять частоту (высоту тона) звукового эффекта во время выполнения. Менять это прямо в XACT просто, но у вас нет прямого доступа к этим параметрам в XNA. Вы должны сперва предоставить открытую переменную реплики, а затем обеспечить использование этой переменной звуком.
Это делается не просто для развлечения. В Rocket Commander XNA и в игре из последней части книги вам необходим этот эффект для искажения звука двигателя управляемой вами ракеты или машины в зависимости от текущей скорости.
Для создания нового экземпляра переменной реплики щелкните Cue Instance и выберите из выпадающего меню New Cue Instance Variable. Вы можете напечатать здесь все, что пожелаете, и использовать любые значения; нет никаких ограничений. В данном случае назовите переменную Pitch и задайте допустимый диапазон от –100 до +100; остальные свойства могут остаться неизменными (рис. 9.12).
Затем вам надо обеспечить, чтобы XACT могла делать с этой переменной что-нибудь полезное. Вы можете сейчас установить ее и назначить любому звуковому эффекту, но она пока не делает ничего, кроме хранения значения. В данном случае вы можете использовать существующие параметры RPC Presets (Runtime Parameter Control), но сейчас их выбор очень ограничен (вы можете менять только громкость (Volume), высоту тона (Pitch) и уровень эха (Reverb Send Level)). Возможно, в будущем появится больше вариантов. Например, для Rocket Commander XNA невозможно установить панорамирование, что использовалось в версии DirectX для управляемого кода для имитации трехмерных звуковых эффектов. Если бы XACT поддерживала трехмерные звуки, это не имело бы значения, поскольку вы могли бы легко выполнить настоящие вычисления трехмерного звука, но, к сожалению, трехмерный слушатель был удален после первой бета-версии XNA. В XACT можно установить параметры трехмерных звуков, и вы можете использовать их в родных проектах XACT, но XNA пока что их не поддерживает (не слишком забавно, если вы, как я, сначала реализовали звуки, а потом все прекращает работать).
Так или иначе, для изменения высоты тона звукового эффекта вы легко можете использовать новый RPC Preset. Просто щелкните RPC Presets и добавьте новый RPC Preset; назовите его RPC Pitch или оставьте предлагаемое по умолчанию имя. Выберите в качестве параметра Sound::Pitch и используйте только что созданную переменную Pitch. Теперь перетащите левую и правую точки на графике внизу, чтобы –12 соответствовало значение –100 вашей переменной Pitch, а +12 соответствовало +100 (рис. 9.13).
Заключительная вещь, которую надо сделать, прежде чем использовать предварительную установку, — привязка к ней всех звуков, чтобы они могли использовать вашу новую переменную. Для этого просто перетащите звуковые файлы из звукового банка (не используйте волновые файлы или реплики, они не будут работать) на RPC Preset.
Показанный ниже код может использоваться для запуска звуковой реплики и динамического изменения переменной высоты тона реплики. Если вы хотите установить статическое значение высоты тона, не надо проходить через все эти трудности; просто создайте новую реплику в XACT и установите для нее другое значение высоты тона. Но для звука двигателя вы хотите менять высоту динамически, и тут уже без описанных выше усилий не обойтись.
Как вы скоро увидите, оставшаяся часть класса Sound еще проще, и вы, вероятно, потратите большую часть времени на работу с XACT, а потом запрограммируете класс Sound за несколько минут.
В показанном выше примере вы также видели способ изменения громкости для категории. Прямое изменение громкости реплики по умолчанию не поддерживается, но вы можете для установки значений громкости ваших звуковых реплик создать переменную громкости реплики тем же способом, которым только что создали переменную высоты тона.