Перейти к содержимому

Поиск по сайту

Результаты поиска по тегам 'волны'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип публикаций


Блоги

  • Робот Байт
  • Fingercomp's Playground
  • 1Ridav' - блог
  • Totoro Cookies
  • Блог cyber01
  • IncluderWorld
  • KelLiN' - блог
  • Крутой блог
  • eutomatic blog
  • Programist135 Soft
  • Сайт в сети OpenNet
  • PieLand
  • Очумелые ручки
  • Блог недоблоггера
  • В мире Майнкрафт
  • LaineBlog
  • Квантовый блог
  • Блог qwertyMAN'а
  • some blog name
  • Дача Игоря
  • Путешествия Xytabich'а
  • Рецепты программирования
  • Шкодим по крупному
  • 123
  • mineOS и её удивительный мир
  • Поляна говнокода Bumer 32

Форумы

  • Программирование
    • Программы
    • База знаний
    • Разработчикам
    • Вопросы
  • Игровой раздел
    • Игровые серверы
    • Моды и плагины
    • Жалобы
    • Ивенты и конкурсы
    • Файлы
  • Общение
    • Задать вопрос
    • Обратная связь
    • Беседка
    • Шкатулка
  • Технический раздел
    • Корзина

Категории

  • Форум
  • Лаунчер
  • Игровой сервер

Группы продуктов

Нет результатов для отображения.


Искать результаты в...

Искать результаты, которые...


Дата создания

  • Начать

    Конец


Последнее обновление

  • Начать

    Конец


Фильтр по количеству...

Зарегистрирован

  • Начать

    Конец


Группа


AIM


MSN


Сайт


ICQ


Yahoo


Jabber


Skype


ВКонтакте


Gtalk


Facebook


Twitter


Город


Интересы

Найдено 2 результата

  1. Добрый день, надеюсь не забыли обо мне! А я пришёл вам новую программу показать Давайте разбираться... Пример работы: симуляция магнитного поля между двумя полюсами Описание: Программа написана на языке программирования lua и работает на движке love2d Визуализация использует GLSL шейдеры версии 3 Для хранения работ используются отдельные файлы с шейдерами, чтобы не трогать весь код программы Кнопки внизу экрана скрываются до наведения на них мышкой Кнопки хранятся как объект со своими функциями и свойствами внутри. И вкладываются в массив инструментария Пример работы: волны искажений Возможности: Навигация и/или зуммирование на колесо мыши Несколько типов анимации. (на кнопку включается анимация движения волн, остальные типы пишутся в шейдерах) Сохранение кадра Сохранение анимации Настройка "шага волны" и скорости течения времени кнопками (обязательно необходимо для построения кадра) Видеообзор: Готовые gif анимации: Рисунок электромагнитных полей: Волновые искажения: Цветные иллюзии: Иллюзия в том, что кружков (кроме двойного) нет. На этих участках случайно совпадают цвета Прочее: Обычные рисунки: Эксперименты над волнами: История версий: Кто-то тут может сказать: "а где ссылка на программу?" А её и не будет пока не реализую нормальную систему сохранений. Почему тогда я выкладываю недоработку? Потому что мне нужно рассказать о проекте для резюме. Это моя лучшая программа и я её люблю. Оттягивать нет смысла, первая версия разрабатывалась ещё полтора года назад. А значит до релиза четвёртой ждать ещё неизвестно сколько. Так что спасибо за внимание! Если вдруг кому-то тема визуализации так же интересна как и мне - пишите в ЛС. Было бы интересно обсудить.
  2. Взываем на помощь богов и богинь звука! В общем, в CX в 1.6.1 заезжает крутейшая, звуковая карточка. Я сейчас вкратце опишу её функции, взятые из исходников мода. sound.modes — это таблица, которая содержит пары "имя формы волны ⟷ её код" и наоборот. Например, sound.modes.sine вернёт код для синусоиды. Вроде 0, лень вверх по сырцам бежать. Имеются следующие формы волн: square (ква... меандр), sine (синусоида), triangle (треугольная), sawtooth (пилообразная). А ещё есть noise — это белый шум. Есть функция sound.setTotalVolume(volume: number), которая моментально для всех каналов выставляет общую громкость (от 0 до 1). Каналы? Их, как и у предшественников — шумовых и пищащих карт, — 8 штук. Они нумеруются от 1 до 8 включительно, и на каждый из них можно поместить... Инструкции, которыми управляется звуковая карта. Есть некая "очередь" у звуковой карточки, в которую помещаются определённые инструкции, и затем... sound.process() запускает в фоне обработку этой "очереди". То есть, будут устанавливаться параметры, играться звук и прочее. Обращу внимание, что это всё в фоне, да. То есть, нам нужны циклы типа таких: while not sound.process() do os.sleep(.05) end. Очередь можно почистить через sound.clear(). И снова про каналы. Каждый из них может быть закрыт или открыт. Соответственно, закрытый канал в большинстве случаев играть звук не будет, а открытый — с превеликим удовольствием. Открыть можно с помощью sound.open(channel: number), закрыть — sound.close(channel: number). И да, это уже инструкции. Вот вам ещё инструкций. Можно установить форму волны на отдельном канале: sound.setWave(channel: number, type: number), вторым аргументом надо скормить код, полученный через sound.modes. Можно установить частоту этой самой волны с помощью sound.setFerquency(channel: number, frequency: number). Инструкция, а как же. Если вы любители... ээ, регистра сдвига с линейной обратной связью, в общем, LFSR/РСЛОС, можно даже на канал ответственную задачу генерирования этого шума возложить. Функция: sound.setLFSR(channel: number, initial: number, mask: number). Чёрт знает, как она работает. Функция sound.delay(duration: number), должна, вообще, выставить какую-то задержку с данной длительностью в миллисекундах. Но что-то я совершенно не понимаю, как её использовать. А использовать надо! Иначе звука не будет. И сразу же можно поставить частотную модуляцию с помощью sound.setFM(channel: number, modIndex: number, intensity: number). Или убрать её: sound.resetFM(channel: number). Тем же образом можно выставить и амплитудную модуляцию. sound.setAM(channel: number, modIndex: number) и sound.resetAM(channel: number). С помощью sound.setADSR(channel: number, attack: number, decay: number, attenuation: number, release: number) имеется возможность выставить ADSR-огибающую. Второй, третий и пятый аргументы указываются в миллисекундах, четвёртый — в виде числа от 0 до 1. Или убрать её: sound.resetEnvelope(channel: number). Для отдельного канала возможно выставить громкость, для этого нужна команда sound.setVolume(channel: number, volume: number). Громкость, как обычно, от 0 до 1. Собственно, это все функции. Теперь осталась мааааленькая запинка, с которой после несколько часов тыканья я не особо справился. Как заставить эту карту сгенерировать мне звук? Потому предлагаю поиграться с этой штукой всем форумом 1.7.10: качаем OC, CX и Asielib. 1.8: OC тут, Asielib не нужен. 1.9: OC тут, Asielib тоже не нужен. И если вы-таки поняли, как заставить её генерировать звук разных уровней крутости, отпишитесь об этом здесь.
×
×
  • Создать...