Oolite
Имя
Пароль
 Запомнить
  Программирование звуков-музыки
Не в сети
Mostly Harmless

Зарегистрирован: 28.12.12
Сообщений: 5
Подскажите, как реализовать в OXP следующее?


Программа минимум:
- чтобы зацикленно/бесконечно игрались музыкальные (а на самом деле, шумовые эмбиенты) треки в следующих местах:
1) Когда находишься на базе.
2) Когда летишь в космосе.

Программа максимум:
- чтобы зацикленно/бесконечно игрались музыкальные треки в следующих местах:
1) Когда находишься на базе в основном режиме.
2) На базе в экране пополнения расходников, рынка кораблей.
3) На базе - рынок товаров.
4) На базе - планетная информация.
5) Когда вылетел из базы, но не совершил гиперпереход.
6) После гиперперехода
7) При появлении врагов.

Хочу сделать реальную звуковую атмосферу.


  Re: Подскажите по программированию звуков-музыки
Не в сети
---Elite---
Аватар пользователя

Зарегистрирован: 02.12.12
Сообщений: 795
Lavender:
...чтобы зацикленно/бесконечно игрались музыкальные (а на самом деле, шумовые эмбиенты) треки в следующих местах... Хочу сделать реальную звуковую атмосферу.


Из своего личного опыта программирования в среде Oolite я понял следующее - вызвать ту или иную функцию можно двумя способами (3-й способ - кнопка, тут возможности узкие, как я понимаю):

1. По событию.
2. По многоразовому таймеру.

Скажем, происходит событие - "Корабль игрока стыкуется с орбитальной станцией". В этот момент вызывается функция этого события, и в ней можно программировать звучание музыки.

Вот как это выглядит в кодах (щёлкните мышкой по картинке для увеличения):
Урок-02 Image-02.JPG



Какие при этом проблемы:

1. Зацикленности нет никакой - музыка проиграет и всё.

2. Нет никаких параллельных звучаний или дорожек. Это значит, что если будет другой какой-нибудь звук, то первый звук прекратится, и будет играть второй. Если появится третий звук, то он прервёт второй - и так далее...

Может, кто-то знает лучше меня про звуки - но это я говорю по своему личному опыту, насколько соприкасался с этой темой...

А многоразовый таймер работает так:
1. Сначала он создаётся при каком-нибудь событии, потом запускается в работу, и к нему привязывается функция. Скажем, через каждые 5 секунд эта функция запускается.

На эту функцию можно сажать музыку. В моём пакете "Глубокий Космос", который я ещё пока не выложил, я так и делаю - когда игрок летит вдали от торговых маршрутов "Точка гиперперехода - Главная планета", то я по многоразовому таймеру запускаю для него через каждые 3 минуты мелодию, выбранную случайным образом из массива мелодий.

Проблемы всё те же - новый звук перебивает прежний, нет параллельного звучания...

Вот такая вкратце информация по звукам и мелодиям.

Рекомендую скачать мой пакет "Tch_Customsounds_01.oxp" и внимательно рассмотреть звуковую таблицу - на какие события она реагирует. Может, это Вас натолкнёт на какие-нибудь мысли...

Пакет лежит в папке "Tch_Sounds_Music_Images" - https://www.box.com/s/x6bj7e5y2i11wmps3o6n

Если хотите пробовать запускать мои пакеты в игре, то Вам надо ещё дополнительно скачать пакет с глобальными функциями - "Tch_Functions_1.0.0_2013-01-12.zip" и какой-нибудь русификатор (в моих пакетах на экран может выводиться русский текст). Всё это можно найти в папке "Tch_Start_OXP" - https://www.box.com/s/4nbd5brasx59d5uunuak


  Re: Программирование звуков-музыки
Не в сети
---Elite---

Зарегистрирован: 06.10.11
Сообщений: 563
Откуда: Москва
to Tsh
Петрович, обратите внимание, может вам пригодится в вашем творчестве.
Треки из нашей кинофантастики


Новая тема  Ответить  
Показать сообщения за:  Сортировать по:  









Список форумов / Создание OXP

cron