HLFX.Ru Forum Страницы (260): « Первая ... « 99 100 101 102 [103] 104 105 106 107 » ... Последняя »
Показать все 3892 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Нубские вопросы от <censored> и других нубов (https://hlfx.ru/forum/showthread.php?threadid=4535)


Отправлено Дядя Миша 31-01-2018 в 14:54:

Crystallize эпсилоны не только в компиляторах

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 03-02-2018 в 01:19:

Друзья, у меня возник неожиданный вопрос по поводу звука в играх.
Звуки же обычно хранятся сжатыми в огг или мп3, а вот в какой момент они разжимаются? Непосредственно во время проигрывания или предварительно при загрузке?


Отправлено JPEG 03-02-2018 в 02:25:

Цитата:
ncuxonaT писал:
Друзья, у меня возник неожиданный вопрос по поводу звука в играх.
Звуки же обычно хранятся сжатыми в огг или мп3, а вот в какой момент они разжимаются? Непосредственно во время проигрывания или предварительно при загрузке?

может ошибаюсь, но mp3 и ogg это ж не архивы, они сжимаются с потерями и типа их не нужно разжимать. Прекешируются видимо во время загрузки

__________________
МОЙ НОВЫЙ ПАБЛИК ПО ХЛ))

перехожу на другой двиг


Отправлено Ku2zoff 03-02-2018 в 03:25:

Цитата:
ncuxonaT писал:
в какой момент они разжимаются

Они не сжаты, а перекодированы со срезом частот, недоступных человеческому уху. Почитай про декодеры на педивикии, например. Ничего разжимать не нужно, нужен только соотв. кодек в системе или в движке, чтобы воспроизвести файл. А вообще, обычно звуковые файлы кэшируются в оперативную память на этапе загрузки уровня, и читаются оттуда в процессе игры. Чтобы наглядно уловить разницу, попробуй загрузить винчестер множеством операций чтения/записи, и параллельно поиграть в кс: кз. Заранее прекэшенные звуки будут играться без задержки, а вот чаттер ботов может вызывать микрофризы при подгрузке файлов налету. Там, ЕМНИП, более 600 файлов, и все они, естественно, в звуковой кэш халфы не влезут.


Отправлено Дядя Миша 03-02-2018 в 06:08:

ncuxonaT используются оба варианта

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ~ X ~ 03-02-2018 в 08:19:

Ku2zoff сжатие с потерями, кагбэ. В звуковой буфер всё пишется уже разжатое и в сыром виде. Когда игра декодирует огг/мрз - это ей решать. Но, как говорится, 7 раз воспроизведи - 1 раз разожми. )

__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]


Отправлено ncuxonaT 03-02-2018 в 20:16:

Спасибо всем за ответы!
Полагаю, оптимальный подход - проигрываемые однократно звуки декодировать на ходу, многократно - декодировать заранее и хранить в памяти, верно?


Отправлено Дядя Миша 03-02-2018 в 20:53:

Встречный вопрос, а как ты определишь какие звуки должны проиграться однократно, а какие нет?
Помоему логичнее исходить из размеров распакованного mp3. Если это музыка, она вполне может занять 50-60 мегабайт в распакованном виде.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 03-02-2018 в 21:14:

Дядя Миша взрывы-выстрелы-шаги - многократно. Какие-то сюжетные фразы или музыка без репита - однократно.


Отправлено Дядя Миша 03-02-2018 в 21:54:

Ну вот допустим у тебя S_LoadSound. Про звук известно только его имя. Как ты угадаешь что будет использоваться часто, а что не очень? Подобные допущения это признак очень хреновой архитектуры в первую очередь.

Добавлено 04-02-2018 в 00:54:

Можно реализовать аналитически, пост-фактум. В структурке звука завести счётчик вызовов. И если он превысит скажем 10 проигрываний - распаковать в wav. Впрочем это всё излишнее усложнение.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 04-02-2018 в 01:34:

Дядя Миша да, ты прав


Отправлено Ku2zoff 12-02-2018 в 22:57:

Есть у кого карта-пример по использованию выключаемых светотекстур для спирита? С исходниками. Я уже всё перепробовал, без лампочки функ_валлы не хотят переключаться. Хотя весь необходимый код из спирита взят.


Отправлено XaeroX 12-02-2018 в 23:19:

По мне, так все звуки надо декодировать при загрузке, кроме музыки. Ну и в OI, емнип, ещё звуки диалогов не декодировались.

__________________

xaerox on Vivino


Отправлено Smykov 25-02-2018 в 17:47:

Никак не могу сделать свой MESSAGE. Игра крашится ещё на строке MESSAGE_BEGIN

C++ Source Code:
1
MESSAGE_BEGIN(MSG_BROADCAST, SVC_TEMPENTITY);
2
WRITE_BYTE(TE_LINE);
3
WRITE_COORD(vecSrc.x);
4
WRITE_COORD(vecSrc.y);
5
WRITE_COORD(vecSrc.z);
6
WRITE_COORD(vecLineEnd.x);
7
WRITE_COORD(vecLineEnd.y);
8
WRITE_COORD(vecLineEnd.z);
9
WRITE_SHORT(10);
10
WRITE_BYTE(255);
11
WRITE_BYTE(255);
12
WRITE_BYTE(255);
13
MESSAGE_END();


Отправлено Дядя Миша 25-02-2018 в 19:03:

Smykov SVC_TEMPENTITY это не твой месседж.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Временная зона GMT. Текущее время 17:29. Страницы (260): « Первая ... « 99 100 101 102 [103] 104 105 106 107 » ... Последняя »
Показать все 3892 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024