|
23.03.2014, 17:52
|
#91
|
Мастер
Регистрация: 12.01.2009
Сообщений: 980
Написано 389 полезных сообщений (для 632 пользователей)
|
Ответ: Russian Sound System
А можно например разделить на два модуля: рейкастинг и ревербератор?
Например сначала рейкастинг считает всё что связано с помещением, затем если есть аппаратная поддержка EAX, EFX то пользуемся ей, если нет то используем программный аналог?
Кстати есть же программные эмуляторы eax и нужно посмотреть чем самодельный аналог будет лучше.
|
(Offline)
|
|
23.03.2014, 23:15
|
#92
|
Дэвелопер
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений (для 1,540 пользователей)
|
Ответ: Russian Sound System
А можно например разделить на два модуля: рейкастинг и ревербератор?
|
Можно сделать раздельно - у меня так и сделано уже.
затем если есть аппаратная поддержка EAX, EFX то пользуемся ей, если нет то используем программный аналог?
|
Чтобы юзать аппаратный ЕАХ нужно много всякой фигни в движок пихать.
Кстати есть же программные эмуляторы eax и нужно посмотреть чем самодельный аналог будет лучше.
|
Ничто не мешает( ну кроме лицензии ) выдернуть alcReverb.c и приспособить для своих нужд. Только после прочтения книги по звуку хочется написать свой велосипед.
__________________
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
24.04.2014, 19:24
|
#93
|
Дэвелопер
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений (для 1,540 пользователей)
|
Ответ: Russian Sound System
Ничто не мешает( ну кроме лицензии ) выдернуть alcReverb.c и приспособить для своих нужд.
|
Мешает лютый говнокод там.
А так наконец-то сделал годный ревербератор с настройками и преферансом.
Демка на файлообменнике, а исходники для особо страждущих в аттаче.
Насчет реверберации методом рейкастинга тут написано что это дохлый номер - слишком много вычислений.
Most room surfaces are not perfectly flat, resulting in diffuse scattering. Thus, attempts to exactly reproduce the response of a given room via techniques such as ray tracing are generally unsuccessful.
|
Демка
__________________
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо mr.DIMAS за это полезное сообщение:
|
|
25.04.2014, 00:54
|
#94
|
Мастер
Регистрация: 12.01.2009
Сообщений: 980
Написано 389 полезных сообщений (для 632 пользователей)
|
Ответ: Russian Sound System
Когда попытался перенести спейсом звук в центр большого зала - звук пропал весь.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
25.04.2014, 13:50
|
#95
|
Дэвелопер
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений (для 1,540 пользователей)
|
Ответ: Russian Sound System
Странно у меня ни разу такого не было. А с производительностью как? В демке 6 источников звука, у каждого по своему ревербератору. На моем процессоре( 4 ядра по 2.8 ГГц ) рывков в звуке не слышно.
Далее нужно для ревербератора сделать стерео выход - без него не особо хороший результат. + Добавить декореллятор между каждым фазовым фильтром - он будет обеспечивать вибрато.
__________________
|
(Offline)
|
|
25.04.2014, 16:01
|
#96
|
Мастер
Регистрация: 12.01.2009
Сообщений: 980
Написано 389 полезных сообщений (для 632 пользователей)
|
Ответ: Russian Sound System
У меня примерно такой же проц, c бустом 3 ггц, рывков не слышно.
У старого движка были проблемы когда источник звука быстро менял свое положение, например при быстром повороте камеры/головы - там был слышен резкий переход, похожий на лаг.
Вот в новом вроде такого нет.
Я еще коды буду смотреть.
У тебя в старых были ошибки. Я их через dr.memory и checkcpp прогнал - там были проблемы с неинициализированными переменными и с утечками памяти. Но если ты в msvs делаешь там наверное свои средства есть. Я сейчас как раз 2013 осматриваю - особенно графическая отладка радует, пошаговая отладка шейдеров, где можно историю каждого пикселя посмотреть и реверсировать все его действия, реально мощная штука.
Жалко что неработает с d3d9 - нужно переносить на api dx11, но например включить feature level 9.1 если железо не совместимо.
|
(Offline)
|
|
28.04.2014, 14:36
|
#97
|
Зануда с интернетом
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений (для 20,935 пользователей)
|
Ответ: Russian Sound System
Извините, что вмешиваюсь, но где почитать про dr.memory ?
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
|
(Offline)
|
|
28.04.2014, 16:33
|
#98
|
Мастер
Регистрация: 12.01.2009
Сообщений: 980
Написано 389 полезных сообщений (для 632 пользователей)
|
Ответ: Russian Sound System
Сообщение от impersonalis
Извините, что вмешиваюсь, но где почитать про dr.memory ?
|
Wiki на googlecode
Инсталятор - а когда поставишь там и доки тоже установятся.
Еще есть пара статей на хабре, где в том числе сравнивают с валгриндом.
В целом неплохая альтернатива валгринду под виндоус.
Хотя вроде есть какие то проекты по переносу валгринда на виндоус, но очень сомнительные.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
17.11.2014, 18:39
|
#99
|
Дэвелопер
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений (для 1,540 пользователей)
|
Ответ: Russian Sound System
Решил потренироваться с SSE, пока отдыхаю от разработки игры. В общем перевел почти все критичные по скорости места на SSE1 - пока только SSE1 освоил, и нужды в инструкция с других версий не возникало.
В общем по ссылке демка, потестируйте. Напишите здесь результаты, сколько микросекунд занимает "рендер" в разных режимах. И конфиг компа. Особенно интересуют всякие говнопроцессоры типа Intel Atom и прочих.
Например у меня при CPU 4 @ 2.8 ГГц и включенном одном звуке( музыка ) рендер занимает:
SSE, Effects on = 485 mcs.
SSE, Effects off = 54 mcs(!)
Scalar, Effects on = 1602 mcs
Scalar, Effects off = 1089 mcs
Как видно, использование SSE дает минимум троекратный выигрыш в скорости.
СКАЧАТЬ
__________________
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
17.11.2014, 20:47
|
#100
|
Бывалый
Регистрация: 22.08.2006
Сообщений: 700
Написано 146 полезных сообщений (для 267 пользователей)
|
Ответ: Russian Sound System
Пропорции абсолютно такие же, только быстрее в 2-3 раза.
i5-4570 @ 3.20
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
17.11.2014, 21:03
|
#101
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: Russian Sound System
Покажешь примеры кода до и после SSE?
Я, в основном, с SSE2 интринсиками работал - векторную математику ускорял. Интересно, как у тебя применение SSE1 выглядит.
|
(Offline)
|
|
17.11.2014, 22:01
|
#102
|
Дэвелопер
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений (для 1,540 пользователей)
|
Ответ: Russian Sound System
Я из <xmmintrin.h> интринсики брал. В <еmmintrin.h> интринсики для SSE2 насколько я знаю. Код в аттаче - С++11.
Там есть разные варианты функций\методов с приставкой SSE - это с SSE(sic!). Основное это RenderContext.cpp
Не ручаюсь за 100% правильное использование SSE инструкций, но тесты говорят за себя.
__________________
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
18.11.2014, 01:31
|
#103
|
Злобный Админ
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений (для 9,330 пользователей)
|
Ответ: Russian Sound System
"Unable to set graphics mode"
__________________
|
(Offline)
|
|
18.11.2014, 01:47
|
#104
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: Russian Sound System
хм, так я тоже юзал xmm и _m128 тип. что-то я уже запутался, где ссе1, а где 2 )
у меня тоже буст давало хороший.
а в sse4 есть дот продукт за 1 инструкцию, в ссе2 он немного неуклюже делается.
|
(Offline)
|
|
18.11.2014, 01:50
|
#105
|
Дэвелопер
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений (для 1,540 пользователей)
|
Ответ: Russian Sound System
"Unable to set graphics mode"
|
странно, блиц как обычно чудит. лечилка в аттаче
хм, так я тоже юзал xmm и _m128 тип. что-то я уже запутался, где ссе1, а где 2 )
у меня тоже буст давало хороший.
а в sse4 есть дот продукт за 1 инструкцию, в ссе2 он немного неуклюже делается.
|
в MSDN написано что __m128d это SSE2. __m128 это SSE1
__________________
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 07:11.
|