2 / 2 / 0
Регистрация: 15.04.2015
Сообщений: 16
|
|
1 | |
.NET 4.x Точное срабатывание по миллисекундам19.10.2016, 16:33. Показов 687. Ответов 4
Метки нет (Все метки)
Как написать программу для выполнения действий точно по миллисекундам (каждую или через 2-5 мс)
Например как в OSU! происходит точный расчет точности клика, относительно ритма песни.
0
|
19.10.2016, 16:33 | |
Ответы с готовыми решениями:
4
Точное срабатывание таймера в начале минуты точное Время Точное значение Точное округление |
17793 / 12944 / 3381
Регистрация: 17.09.2011
Сообщений: 21,226
|
|
19.10.2016, 16:57 | 2 |
Если нет аппаратной синхронизации, то практически никак: настольная версия Windows не является системой реального времени.
Максимально увеличить разрешение можно, воспользовавшись мультимедийным таймером — у него максимальное разрешение 1мс, но это не является гарантией того, что ваш код будет отрабатывать с таким интервалом.
1
|
2 / 2 / 0
Регистрация: 15.04.2015
Сообщений: 16
|
|
19.10.2016, 17:16 [ТС] | 3 |
Я заметил, что таймер не даёт нужной мне точности, но есть уже готовый проект - игра OSU!, написанная на с# где это как - то организованно.
0
|
[Bicycle Reinventor]
|
|
19.10.2016, 17:18 | 4 |
Именно. Мультимедийный таймер ещё и нестабилен. На своём опыте наблюдал, как использование этого средства иногда вешало приложение или крашило его.
Разрешение системного таймера Windows - 16.7мсек или 60 вызовов в секунду. Однако для Osu! этого вполне достаточно, как игрок со стажем могу сказать. Считается, что средняя скорость мускульной реакции здорового человека составляет от 30 мсек и выше. Я говорю о времени от восприятия визуального сигнала глазами, транспортировки сигнала по нервам в мозг, его обработки и до транспортировки сигнала по нервам до мышцы. А рассинхрона в 2-5 мсек никто из людей не заметит. Если бы osu! дейсвительно была так строга к таймингу, ни один из битмапов пройти было бы невозможно. Разве что профессиональным музыкантам с невероятным чувством ритма. Рассинхрон становится заметен начиная где-то с 20-30 мсек. Когда я делал свой битмап на одну из композиций Эпидемии, у них в песне был сдвиг ритма после середины, я долго не мог поправить тайминг, пока мне один японский игрок не помог.
0
|
2 / 2 / 0
Регистрация: 15.04.2015
Сообщений: 16
|
|
19.10.2016, 17:20 [ТС] | 5 |
Спасибо за ответ. Буду пытаться найти решение проблемы возможно через таймер, возможно ещё как-нибудь
0
|
19.10.2016, 17:20 | |
19.10.2016, 17:20 | |
Помогаю со студенческими работами здесь
5
Точное выравнивание Точное определение частотности Выполнение в точное время Точное положение JPanel Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |