Pull to refresh
3
Илья@edge790

User

Send message

Хотя движение курсора осталось таким же рваным визуально, как и ранее

Вы же понимаете, что это связано не с операционной системой, а как раз с недостатком количества кадров.

У меня курсор установлен на 800 DPI (Dots Per Inch, т.е. точек на дюйм), т.е. двигая курсор на дюйм (2.5 сантиметра) он переместится на 800 пикселей в сторону. Т.е. чтобы курсор плавно двигался на видео с частотой в 120 кадров в секунду, мне нужно нужно двигать его на 120 пикселей в секунду, т.е. 120 / 800 * 2.5 = 0.375 сантиметра в секунду.

Тогда на каждом кадре курсор будет двигаться на пиксель и не выглядеть "рвано"

Если речь про G-Sync / Free-Sync, то это правда, но с оговорками.

1) FPS в игре находится у верхней границы частоты обновления монитрора, но не превышает её

2) Не опускается до нижней границы G-Sync диапазона (в статье указано 36 фпс, не знаю отличается ли для более "быстрых" мониторов)

Т.е. грубо говоря, он работает, если он не нужен, в случае превышения частоты кадров, частоты обновления монитора, он может добавлять задержку от 2 до 6 кадров, обычно в 2 кадра: "33.2ms @60 Hz, 20ms @100 Hz, 13.8ms @144 Hz, etc"

Поведение G-Sync в зависимости от конфигурации и соотношения частоты кадров к частоте обновления монитора. Источник: BlurBusters
Поведение G-Sync в зависимости от конфигурации и соотношения частоты кадров к частоте обновления монитора. Источник: BlurBusters

При правильной конфигурации ( как рекомендуется в статье, V-Sync: on, G-Sync: on, ограничение частоты кадров в -3 от частоты обновления монитора), задержка действительно получается равномерной. Но в случаях когда мы выпадаем из нормальных условиях, у нас появляются задержки до 6 кадров, что следует тезису сказанному в комментарии, о том что хотя задержка каждого кадра небольшая, когда их несколько - они становятся ощутимы.

Плюсую идею с web-сервером.

"Искать IP адрес" не нужно если использовать mDNS.

Более того, сам же девайс может быть и точкой доступа, так что вместо подключения к нему по блютусу через приложение, можно напрямую подключиться к нему по wifi и получить от него веб-страницу для мониторинга. Аналогичный подход используется в WLED и это мне показалось очень удобным. Подключаешься к нему как к точке доступа, переходишь на 4.3.2.1 в браузере, и через панель управления подключаешь его к вайфаю из которого он доступен через mDNS и с телефона и с компьютера.

Это там, где курсор все еще перерисовывается с частотой 12-15Гц?

У меня обновляется как минимум 120 раз в секунду.

Я даже не поленился и проверил.

Проверил выставив 144 герц обновление рабочего стола, записав через OBS в 120 кадров в секунду (почему-то максимум, который он мне позволяет), и просмотрев изображение покадрово. На каждом кадре промежутки между которыми ~8 мс курсор находится на другом месте рабочего стола.

Сам файл с видео для подтверждения в Google Drive

вот только игры не работают в любом фпс

Это правда, как и раньше были игры которые не использовали больше одного ядра процессора. Как только стандартом для индустрии / пользовательского железа стали многоядерные процессоры, так и индустрия пошла вслед.

Я думаю что с появлением режимов "производительности" и "качества" на консолях индустрия снова сделала качественный переход в создание игр которые будут работать на бОльшем диапазоне кадров в секунду.

анимации и расчет физики всегда лочат

Тоже правда, но иногда (и я ожидаю/надеюсь теперь это будет ещё чаще) используется интерполяция. Например обновление физики 20 раз в секунду, а между ними плавные анимации в 144 кадров в секунду. В процедурных анимациях большее количество кадров может очень сильно улучшить картинку.

захваты движения на лоченом фпс

В захватах движения всё равно используется интерполяция. Её используют для генерации ключевых кадров (key frame), а между ними всё ещё используется интерполяция.

Это упрощает изменение анимаций, если необходимо что-то поменять, помогает с динамическим количеством кадров и помогает скрыть недостатки, если например в анимации присутствует шум / неровности.

не всегда интерполяцию можно и нужно делать

Не всегда, но в случае когда нужно бОльшее количество кадров без значительного увеличение потребляемых ресурсов - можно и нужно. Не нужно говорить что "мы интерполируем всё неглядя", но в огромном количестве случаев интерполяция - работает.

если физику считать на разном фпс, то расчеты и поведение будет разным

Тоже верно, но, как мне кажется, тоже нерелевантно. Во-первых: интерполяция, во-вторых: в большинстве случаев просчёт физики с большей частотой даёт более "реалистичные" результаты, если параметры физики запрограммированы с учётом разного просчёта физики. Пример: в играх с более частым просчётом физике зачастую сложнее попасть за стены. Негативный пример: Doom (2016) в котором урон от BFG зависит от кадров, анимация волос почти в каждой игре "сходит с ума" при увеличении количества просчётов, некоторые игры ускоряются / ускоряют некоторые свои элементы при большем количестве кадров.

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

есть мониторы у которых шим 300-500гц, но люди не жалуются на видимость мерцания

Я предполагаю, что дело в характере изменения - если картинка становится ярче/тусклее на незначительные величины то это не так заметно, как если бы каждые 2 миллисекунды из 1000 были красными. Характерный пример - старые лампочки, которые работали в наших сетях в 60 герц и соответственно мерцали. Вы же не будете утверждать что глаз не видит больше 60 кадров?

в научных статьях показывают, что средний человек не видит больше 90гц

Что за статьи? Кем проводились? Что исследовали? Как исследовали?

Было ли это появление точки на мониторе или лампочка мигала красным.

Учитывая то что "тестировал" свой монитор на самых разных знакомых и они замечали разницу движения курсора по рабочему столу на 144 и 240 герц явно показывая где "плавнее", при всём уважении к исследователям и вам, я склонен верить себе.

пилоты могут до 300гц различить из-за скорости реакции

Прощу прощения, но здесь это вовсе выглядит как какие-то фантазии.

Какие пилоты? Пилоты истребителей? Пилоты формулы-1? Есть какие-то конкретные исследования, перцентили? Почему именно 300? Сколько лет опыта необходимо для этого и до какого возраста это работает?

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

Не понимаю как это связано. Значит ли это что мы должно ориентироваться на частоту воспринимаемую прямым зрением? Или это аргумент за ещё большее количество кадров чтобы картинка хорошо воспринималась и периферийным зрением?

Проблема / преимущество монитора в том что он не знает куда смотрит пользователь.

Это для VR делают "Фовеатную отрисовку" (Foveated rendering) - которая может отрисовывать разные части кадра с разным разрешением, но для монитора, как мне кажется, нужно ориентироваться на худший исход: не стоит делать приложения с расчётом на то, что пользователь будет всегда смотреть в центр.

Поэтому этот аргумент воспринимаю как "прямым зрением ты видишь 240 герц, значит для периферийного нужно 360".

Можно ли сделать так что повышенная частота кадров будет незаметна или даже сделает продукт хуже - несомненно, и, во многом, ваш ответ верен: на данный момент бОльшая часть игр действительно работает с фиксированным количеством кадров, физика работает отдельно от них, интерполяция может убить исходный замысел анимации, физика использует заранее заданные параметры которые ломаются при изменении частоты её просчёта, а глаз не равнозначно восприимчив ко всем изменениям, в частности лампочки, или более радикальный пример - прерывистый свет на концертах / в клубах, когда кажется будто весь мир теперь "отрисовывается" в 1 кадр в секунду.

Но если её делать хорошо, и как мне кажется индустрия идёт в этом направлении, то получается ещё одно качественное изменение, которое заметно улучшает восприятие игры, её анимаций и геймплей.

Upd: Если вы спросите меня какая настоящая проблема того что мы все не перешли на 144 или даже 240 герцовые мониторы, то мой ответ будет что главный виновник - матрицы и их стоимости.

Купить высокогерцовый монитор сейчас очень дёшево, но у него будет TN матрица у которой очень плохая цветопередача. И это ГОРАЗДО заметнее разницы между 60 и 140 кадров в секунду. Всё: ютуб, фильмы, мультики, игры - на этом мониторе будет выглядеть хуже, что очень весомый минус.

На "хорошей" матрице за каждое увеличение частоты и разрешения нужно будет платить всё больше, а потому 140 герц с хорошей цветопередачей сейчас доступно только тем кто готов отдать 700+ евро за один лишь монитор.

Даже не тренированный глаз хорошо отличается разницу между 144 гц и 240 гц, если их поставить рядом друг с другом / включить друг за другом, например через изменение частоты обновления рабочего стола в виндовс. Проверил на своих знакомых используя 240 гц 27" монитор.

Лично я за год его использования замечал изменение частоты обновления экрана даже когда после обновления видеодрайвера на следующий день настройка изменилась с 240гц до 144гц, т.е. проведя за 240гц продолжительное время, можно заметить разницу с 144гц даже после сна.

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

Есть ли "убывающая выгода" (Diminishing Returns) от бОльших частот обновления монитора? Однозначно! Но мне кажется что до 1000 гц они всё ещё будут заметны, пускай это и будет меньше бросаться в глаза.

Зачем 500гц мониторы для киберспорта?

Во-первых - больше герцовка, меньше задержка. 144 герц дают 6.94 мс задержки, 240 герц дают 4.17 мс задержки, 480 гц => 2.08 мс.

Для обычного пользователя это "чуть-чуть более плавные анимации" для киберспортсменов с 200 мс реакцией даже прыжок от 240 гц до 480 гц это 1% преимущества.

Если 1% преимущества кажется незначительным, то можно погрузиться глубже:

На монитор отправляются только готовые кадры и "готовятся" они неравномерно: иногда больше иногда меньше и тут несколько ситуаций:

1) частота > фпс: повышение герцовки (почти) не даёт преимуществ

2) частота = фпс: повышение герцовки даёт премущество оговоренное выше (1% для 480 против 240)

3) частота < фпс: всё сложно, но грубо говоря повышение герцовки значительнее повышает преимущство.

Последнее связано с "рассинхронизацией" кадров между кадрами срендеренными игрой и кадрами, отображаемыми на мониторе. Попробую показать на вот этом графике:

https://www.desmos.com/calculator/nq4wru3a2v

Красное - кадры срендеренные игрой в 720 фпс, синее - обновление экрана с частотой в 480 герц.

Точки - когда кадр готов в игре и когда монитор готов его коазать.

Считая что первый кадр "попал", следующий имеет дополнительную задержку (2.08333 - 1.38889 = 0.69444 мс), а следующий за ним: 4.16667 - 2.77778 = 1.38889 мс, и это только из-за несоответствия частоты кадров и обновления экрана, задержка от монитора суммируется к ней, таким образом в этих условиях мы уже получаем что 2.08мс задержки превратились в почти 3.5, а следовательно почти 1.5% "преимущества" для игроков с реакцией в 200 мс.

Неоднократно отмечал для себя что смеяться над datahoarder'ами - плохо.

Потому что сначала ты смеёшься над ними мол: "хаха большие корпорации не дадут пропасть своему контенту" а потом Nintendo выкладывает сборник классических игр из пиратских ROM'ов, другие компании говорят что исходники потеряны и т.д.

И в какой-то момент ты хочешь найти передачу из детства, милую твоему сердцу, а она уже на торрентах Ютубе залита этим же человеком.

В браузерах есть настройка чтобы он открывался с вкладками, с которыми он был закрыт.

А если вы этого не хотите в большинстве случаев, но именно сейчас вам это надо, то для этого есть отдельная кнопка: Restore Previous Session.

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

Я как читер могу рассказать свое:

Я любил взламывать одиночные игры, потому что для меня ЭТО было игрой. Не сам геймплей и игровой процесс, а сам процесс взлома, желательно наиболее нестандартный, и не простой.

Игры здесь - давали гибкие ограничения и наглядность результата. Иногда целью было сломать игру как можно сильнее - сделать наиболее прокачанного персонажа: например в Oblivion взломав все статы и навыки до максимальных значений: 255 для базовых, но как я узнал уже после того как "охладел" к взлому есть ещё 255 бонусных, так что максимум 510, когда прокачанный персонаж нормальными условиями позволял набирать всего до 100 в каждом навыке. Что удивительно то как игры с этим работали.

Для меня это было своего рода бесконечный прогрессивный судоку, или даже нонограмма, которую можно "решить" бесконечным множеством способов и само решение можно делать сложнее, как только ты становишься опытнее.

Если начиналось все с чит-кодов в компьютерном клубе и "Артмани" из дисков от игровых журналов, то через год я уже помнил на изусть максимальные значения 1,2, 4 и 8 байтовых целых, знал что есть +- и указатели, ещё через пару лет, научился находить и переписывать ассемблер через code injection из Cheat Engine, создание своих условий, создание тренеров на платформе, что у указателей есть смысл и как их можно использовать для упрощения процесса или создания чегото принципиально нового.

Таким образом даже возвращаясь в одну и ту же игру я мог "играть" в ее взлом снова и получать новую награду.

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

Я знаю что это звучит странно, мол игры и так хороши и так сделанны развлекать, но у меня было ограниченное количество игр и я был ребенком, поэтому мне хотелось видеть все что есть в тех играх что мне удалось достать, и растянуть и разнообразить это на пару месяцев.

С мультиплеерными играми я "игрался" не долго - когда я добрался мне хватало навыков на написание простых ботов (читай здоровье -> если меньше -> жми Ф5 чтобы выпить зелье, в противном случае жми кнопку атаки) и хотя сам процесс их написания все ещё был интересен, держать их запущенными ночами - нет.

Но с появлением интернета я сидел на читерских форумах, делал иногда реквесты, потому что это давало поток новых "игр" о которых я не знал и обычно четкую цель (неуязвимость / телепорт / бесконечные деньги), там же и обменивались опытом - кто как и что взломал, что было интересно. Там же я и видел людей которые ищут/покупают читы для онлайн игр, и как мне кажется, их мотивация очень простая:

1) "Взломать систему" - как те люди что были у игровых автоматов, только от мира геймеров

2) престиж среди друзей / знакомых - для них важно быть первыми и они действительно гордятся тем что им удалось "взломать систему"

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

Если вы покупаете продукт не для использования а для продажи то это предпринимательская деятельность, которая накладывает на вас обязательства, которые, как я предполагаю, у вас нет возможности реализовать.

Буквально читая статью вспоминал этот анекдот:

- Знаешь, папа, я сегодня рубль сэкономил!

- Молодец, сынок! А как?

- Утром я не сел в автобус, а бежал за ним.

- Дурак! Надо было бежать за такси, сэкономил бы больше.

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

"ИИ Общего назначения" и "программа которая хорошо справляется с некоторыми задачами" - это разные вещи.

Например: GIMP хорошо справляется с редактированием изображений, но это не значит что завтра я доверяю ему везти мою машину.

IQ не отражает уровень интеллекта.

Мне кажется удивительным насколько много людей верят в IQ, с учётом того что верить в него будут скорее те кто считают что он у них "выше среднего", но в то же время считают что по таким тестам с картинками можно исчерпывающе сказать что-то об интеллекте человека.

IQ тесты это один из самых больших скамов в мире, и то что OpenAI решили в нем посодействовать - ещё одно подтверждение того, что OpenAI любят "приукрасить" свои достижения

Удивительно, что ваш комментарий настолько же верен насколько и абсолютно ошибочен.

Вы правы что в консистентности шкала не линейная а логарифмическая - получить 90% верных ответов вместо 80%, гораздо сложнее чем 60% вместо 50%

Но проблема в том, что предположительно, LLM уже видела ответы для этих вопросов, а следовательно если она выдавала бы и 100% это было не так уж и удивительно.

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

Некоторые думали что может, т.к. она объясняет смысл анекдотов, а потом выяснилось, что она их может объяснить потому что она уже видела объяснения.

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

Т.е. в конце концов это "Цепь Маркова на стероидах" и это сильно ограничивает количество работ которые ей можно доверить.

gradle это билд система, у которой совершенно другие разработчики не связанные с android studio и intellij

То, что нужно скачать SDK, я думаю, и так понятно и долго вдаваться в подробности не буду, но , если кратко, то чтобы не требовалось скачать 50 версий по 20 гб SDK всех версий, чтобы разрабатывать под конкретную, а скачать только её.

Для оффлайн разработки вы качаете её отдельно и ставите на флешку, указывая до неё путь.

Мой предыдущий комментарий все так же верен: вы можете сделать себе носитель со все и инструментами необходимыми для оффлайн разработки, некоторые знакомые это делали (т.к. у них требования разрабатывать на устройстве без доступа к интернету)

Это не соответствует действительности.

Вы можете скачать идею и оффлайн ключ активации и активировать ее так. Вы можете скачать fallback версию идеи и ключ ее активации - она будет активна пожизненно.

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

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

Во-первых: не стресс тестирование а сразу посыл куда подальше, по причине "не хочу возиться с вашими технологиями" (на что он имеет полное право, но, я думаю, требует уточнения, чтобы было понятно за что выступал Филхо и почему его развернули)

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

В-третьих: не провалил, а сделал правильное решение. Если тебе не рады и твой труд не ценят - нечего надрываться, умные люди везде нужны, но видимо не в этой кодовой базе.

По поводу "я устал я мухожук": если твои патчи отклоняют просто потому что они на расте (что ты и пытаешься сделать), то я не вижу причины продолжать пытаться это делать.

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

Что, в целом, валидное замечание - в опенсорсе последнее слово всегда за мэнтейнером. Но это не делает работу "некто из Microsoft" хуже, и в таких обстоятельствах его "я устал я мухожук" - единственное верное решение, имхо.

Information

Rating
5,304-th
Location
Воронеж, Воронежская обл., Россия
Registered
Activity