Форум Trainsim  

Вернуться   Форум Trainsim > Auran TrainZ > TrainZ - Звуки

Ответ
 
Опции темы Опции просмотра
Старый 14.02.2010, 23:20   #1
TRam_
Матёрый пользователь
 
Аватар для TRam_
 
Регистрация: 18.02.2008
Сообщений: 8,703
Вы сказали Спасибо: 1,424
Поблагодарили 2,365 раз(а) в 1,319 сообщениях
TRam_ стоит на развилке (репутация по умолчанию)
По умолчанию Звуки вагонов

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

Вообще, кончно, можно попытаться делать звуки телег стандартными tracksound'ами, но получить реалистичные звуки внутри вагона при этом вряд-ли удастся (предназначенный для этого тег mufle может только уменьшать громкость внешних звуков, да и то не всегда корректно)

Для того, чтобы отключить дефолтный стук, достаточно строки в trainzoptions.txt

-disablerailjointsound

Но кроме этого надо убирать и tracksound'ы телег. По дефолту (если не прописаны свои) тележкам прописывается <kuid:-3:10194>, так что если Вы радикально решили полностью убрать встроенные звуки, то открываем этот куид на редактирование, удаляем из него все звуки, а в config.txt оставляем только

kuid <kuid:-3:10194>
kind "tracksound"
asset-filename "default"

(не понравится - возвращайте куид к оригиналу)

Если не хочется портить этот куид, просто поставьте на тележки вагонов аналогичные "пустые" tracksound'ы.

Теперь по звукам. Что я нкашёл (это чисто опытные факты, не более) из позволяющего более-менее снизить глючность скриптовых звуков

1) желательно, чтобы максимальная громкость звука не превышала 70-75дБ . Если Вам покажется это слишком тихо, то всегда можно увеличить громкость колонок

2) в начале звука делать плавное увеличение уровня от 0 до обычного (втечение 0.2-0.3 секунды), а в конце - от обычного до 0

Пользуясь этими двумя правилами, удалось сделать более-менее рабочий набор звуков под скрипт, запускающий их в зависимости от скорости вагона


В дальнейшем, если появится материал и удастся выделить время, подумаю над скриптом, который бы запускал разные звуки в зависимости от вида (1 или (2 и 3) или 4) а также от нахождения в вагоне.
__________________
местный зомбяк
TRam_ вне форума   Ответить с цитированием
Старый 01.01.2007, 12:00  
Яndex
Спонсор
 
 
Регистрация: 01.01.2007
Сообщения: 500


Реклама показывается изредка по случайному принципу
По умолчанию РЕКЛАМА

 
Старый 14.02.2010, 23:36   #2
TRam_
Матёрый пользователь
 
Аватар для TRam_
 
Регистрация: 18.02.2008
Сообщений: 8,703
Вы сказали Спасибо: 1,424
Поблагодарили 2,365 раз(а) в 1,319 сообщениях
TRam_ стоит на развилке (репутация по умолчанию)
По умолчанию

ну а по существующему скрипту...

Итак, мы сделали звук внешнего вида. Определили точное время между перестуками - они хорошо видны (и в звуковом редакторе обычно есть возможность измерить время между ними). Затем делим длину вагона на это время (в секундах), и получаем скорость вагона в метрах в секунду.

Для того, чтобы скрипт понял этот звук, необходимо присвоить ему имя

vel_outside_*.wav

где * - округлённая скорость поезда в метрах/секунду.


Далее, чтобы добавить в скрипт

1) открываем файл krasn_strela.gs в блокноте...

2) ищем строку

thread void VelocitySoundLooper()

ниже в строке

int[] soundlib=new int[8];

вместо 8 ставим общее число наших звуков

далее в колонку


soundlib[0]=2;
soundlib[1]=7;
soundlib[2]=14;
soundlib[3]=15;
soundlib[4]=16;
soundlib[5]=19;
soundlib[6]=22;

указываем в "слотах" скорости, которые есть в именах звуков вида vel_outside_*.wav . Если требуется, добавляем новых.

А в той части, где

if(vel>soundlib[6])
Sleep(World.PlaySound(MyAsset1, "sound/vel_outside_"+soundlib[6]+".wav", 1.0f, 14.0f, 100.0f, me, "a.bog0")-0.2);
else


и т.п. можем добавить ещё таких строк, для новых слотов. В дальтнейшем я это изменю, но пока так...
__________________
местный зомбяк
TRam_ вне форума   Ответить с цитированием
Старый 15.02.2010, 05:41   #3
Gregory_777
Тестер
 
Аватар для Gregory_777
 
Регистрация: 03.12.2007
Адрес: Москва
Сообщений: 3,668
Вы сказали Спасибо: 880
Поблагодарили 3,815 раз(а) в 874 сообщениях
Gregory_777 хороший собеседник
Отправить сообщение для Gregory_777 с помощью ICQ
По умолчанию

TRam_, лови звуки переезда. Обозначение:

[начальная скорость]-[конечная скорость]_[in/out].wav

in - приближение к переезду
out - удаление от.

http://stream.ifolder.ru/16419560
__________________
Gregory_777 вне форума   Ответить с цитированием
Старый 15.02.2010, 20:35   #4
TRam_
Матёрый пользователь
 
Аватар для TRam_
 
Регистрация: 18.02.2008
Сообщений: 8,703
Вы сказали Спасибо: 1,424
Поблагодарили 2,365 раз(а) в 1,319 сообщениях
TRam_ стоит на развилке (репутация по умолчанию)
По умолчанию

лови результат

http://dump.ru/file/4318201


правда, слишком длинные звуки убивают звуковой движок ТРС на**р, но можешь попробовать. Если изменение громкости всё-таки не заработает, делай свою модель маркера с точкой привязки.

(ну и проверь логику определения направления движения состава - чувствую там ошибка закралась)
__________________
местный зомбяк
TRam_ вне форума   Ответить с цитированием
Старый 15.02.2010, 21:37   #5
genesis
Матёрый пользователь
 
Регистрация: 31.07.2007
Адрес: Ульяновск
Сообщений: 2,570
Вы сказали Спасибо: 245
Поблагодарили 174 раз(а) в 76 сообщениях
genesis стоит на развилке (репутация по умолчанию)
Отправить сообщение для genesis с помощью ICQ Отправить сообщение для genesis с помощью Skype™
По умолчанию

Эффект Доплера — скриптами? А тут понимают толк в извращениях, ничего не скажешь
genesis вне форума   Ответить с цитированием
Старый 15.02.2010, 21:50   #6
TRam_
Матёрый пользователь
 
Аватар для TRam_
 
Регистрация: 18.02.2008
Сообщений: 8,703
Вы сказали Спасибо: 1,424
Поблагодарили 2,365 раз(а) в 1,319 сообщениях
TRam_ стоит на развилке (репутация по умолчанию)
По умолчанию

Цитата:
А тут понимают толк в извращениях, ничего не скажешь
не, тут человек скриптовать просто учится. Ну и дал ему конструктор, раз уж просит уже год
__________________
местный зомбяк
TRam_ вне форума   Ответить с цитированием
Старый 15.02.2010, 22:40   #7
genesis
Матёрый пользователь
 
Регистрация: 31.07.2007
Адрес: Ульяновск
Сообщений: 2,570
Вы сказали Спасибо: 245
Поблагодарили 174 раз(а) в 76 сообщениях
genesis стоит на развилке (репутация по умолчанию)
Отправить сообщение для genesis с помощью ICQ Отправить сообщение для genesis с помощью Skype™
По умолчанию

Аа, а то я уже испугался
genesis вне форума   Ответить с цитированием
Старый 16.02.2010, 01:59   #8
Gregory_777
Тестер
 
Аватар для Gregory_777
 
Регистрация: 03.12.2007
Адрес: Москва
Сообщений: 3,668
Вы сказали Спасибо: 880
Поблагодарили 3,815 раз(а) в 874 сообщениях
Gregory_777 хороший собеседник
Отправить сообщение для Gregory_777 с помощью ICQ
По умолчанию

Смех - смехом, а Ауран походу не собирается звуковой движок менять.
__________________
Gregory_777 вне форума   Ответить с цитированием
Старый 16.02.2010, 02:02   #9
TRam_
Матёрый пользователь
 
Аватар для TRam_
 
Регистрация: 18.02.2008
Сообщений: 8,703
Вы сказали Спасибо: 1,424
Поблагодарили 2,365 раз(а) в 1,319 сообщениях
TRam_ стоит на развилке (репутация по умолчанию)
По умолчанию

мы это знаем. В джете изначально не было заложено ничего для управления звуками. Дефолтный стук - и тот сделан аналогично вышеприведённому триггеру (содержимое data.ja об этом говорит), только звуки там корче
__________________
местный зомбяк
TRam_ вне форума   Ответить с цитированием
Старый 16.02.2010, 02:59   #10
Gregory_777
Тестер
 
Аватар для Gregory_777
 
Регистрация: 03.12.2007
Адрес: Москва
Сообщений: 3,668
Вы сказали Спасибо: 880
Поблагодарили 3,815 раз(а) в 874 сообщениях
Gregory_777 хороший собеседник
Отправить сообщение для Gregory_777 с помощью ICQ
По умолчанию

Пока звенеть заставить не удалось
Хотя бы просто звенеть.
Есть какая-то возможность кидать на экран значения переменных из скрипта в риалтайме?
__________________
Gregory_777 вне форума   Ответить с цитированием
Старый 16.02.2010, 03:06   #11
TRam_
Матёрый пользователь
 
Аватар для TRam_
 
Регистрация: 18.02.2008
Сообщений: 8,703
Вы сказали Спасибо: 1,424
Поблагодарили 2,365 раз(а) в 1,319 сообщениях
TRam_ стоит на развилке (репутация по умолчанию)
По умолчанию

Цитата:
Пока звенеть заставить не удалось
ну попробуй задом маркер поставить... У меня звенело.

Вообще есть способы, связанные с Interface.Log() и им подобные, но мне их заставить работать не удалось

Я по-дедовски делаю, с постпроверкой (всё равно скрипт после этого переделывать)

1) прописываем "-enablescriptmessagelogging" в трейнзопшонзах
2) в нужном месте делаем


PostMessage(me, "!!!!!!!!!!1!!!!!",<одна нужная переменная>+"__"+<вторая нужная переменная>,0.0);


После сессии залезаем в jetlog.txt и ищем наши восклицательные знаки
__________________
местный зомбяк
TRam_ вне форума   Ответить с цитированием
Старый 16.02.2010, 06:06   #12
Gregory_777
Тестер
 
Аватар для Gregory_777
 
Регистрация: 03.12.2007
Адрес: Москва
Сообщений: 3,668
Вы сказали Спасибо: 880
Поблагодарили 3,815 раз(а) в 874 сообщениях
Gregory_777 хороший собеседник
Отправить сообщение для Gregory_777 с помощью ICQ
По умолчанию

Мозг взорвался. А вот это нам помочь не может?
Код:
public native void PlaySoundScriptEvent(string soundTrigger)
Parameters
soundTrigger = Name of the sound event to start playing, this equates to the trigger tag of the sound script subcontainer in config.txt.
Returned Value
None
Syntax
PlaySoundScriptEvent("dayloop");
Notes
Plays the specified sound event from the asset's SoundScript.
SoundScripts are defined as sub-containers in the soundscript container of the asset's configuration.
For details on creating assets with SoundScripts, see the Content Creators Guide.
This method will start playing the sound.
Depending on the SoundScript configuration, the sound will either be played just once or played continuously in a looping cycle such that StopSoundScriptEvent() will need to be called to stop it.
__________________
Gregory_777 вне форума   Ответить с цитированием
Старый 16.02.2010, 11:01   #13
genesis
Матёрый пользователь
 
Регистрация: 31.07.2007
Адрес: Ульяновск
Сообщений: 2,570
Вы сказали Спасибо: 245
Поблагодарили 174 раз(а) в 76 сообщениях
genesis стоит на развилке (репутация по умолчанию)
Отправить сообщение для genesis с помощью ICQ Отправить сообщение для genesis с помощью Skype™
По умолчанию

Подойдет, почему бы и нет.
Цитата:
Сообщение от Gregory_777 Посмотреть сообщение
Смех - смехом, а Ауран походу не собирается звуковой движок менять.
Здесь вновь собираются забивать гвозди микроскопом?
genesis вне форума   Ответить с цитированием
Старый 16.02.2010, 11:04   #14
Combine
Матёрый пользователь
 
Аватар для Combine
 
Регистрация: 30.08.2007
Адрес: Московская область, 36км
Сообщений: 3,620
Вы сказали Спасибо: 263
Поблагодарили 304 раз(а) в 172 сообщениях
Combine стоит на развилке (репутация по умолчанию)
По умолчанию

Цитата:
Есть какая-то возможность кидать на экран значения переменных из скрипта в риалтайме?
Interface.Print(string); Выводит сообщение в пейджер. Только аккуратно, не забудь в релизе вывод убрать. И их число там ограничено (несколько тысяч).
__________________
Когда Комбайн кидает мне новый рендер очередной полезной приблуды, он называет её "govno%number%.jpg". Умолчу о том, какими словами он сопровождает отсыл этих рендеров...
Google+
Combine вне форума   Ответить с цитированием
Старый 16.02.2010, 11:59   #15
TRam_
Матёрый пользователь
 
Аватар для TRam_
 
Регистрация: 18.02.2008
Сообщений: 8,703
Вы сказали Спасибо: 1,424
Поблагодарили 2,365 раз(а) в 1,319 сообщениях
TRam_ стоит на развилке (репутация по умолчанию)
По умолчанию

Цитата:
Мозг взорвался. А вот это нам помочь не может?
я что-то не слышал, что отдельный звук из саундскрипта может быть остановлен. Так что разницы между PlaySoundScriptEvent и PlaySound никакой, а мороки больше
__________________
местный зомбяк
TRam_ вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 10:30. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
© 2001-2019, Администраторы и разработчики Клуба Trainsim
TopList Нажми для появления дома Trainsim на карте Intermap
Что это?