Что такое стартеры в играх

от admin

Ста-ста-статтеринг, или откуда в игре берутся микрофризы и как с ними бороться

Представьте себе: вот вы ждете новую часть вашей любимой игры и, наконец, она выходит. Специально под это дело вы обновили свой ПК: установили новейшие ЦП и ГП, увеличили объем оперативки и даже заменили жесткий диск на SSD. Теперь игра должна запускаться у вас гладко, как шелк, с первого же экрана загрузки и до самого конца.

Вот вы скачиваете себе ранее оплаченный предзаказ. Завершается установка, вы запускаете игру. Все идет хорошо: игра «летает» с частотой кадров 60 FPS. Или, во всяком случае, так говорит вам счетчик кадров в оверлее вашего ГП. Но что-то идет не так. Вы водите мышкой туда-сюда и замечаете, что игра… фризится.

Как это возможно? Какие еще фризы при 60 FPS?

Это может казаться смешным до тех пор, пока не столкнешься с этим сам. Если вы встречались с такими фризами, то наверняка уже успели их возненавидеть.

Это не лаги. Не низкий фреймрейт. Это статтеринг. При высоких FPS и идеальной сверхбыстрой конфигурации.

Что это такое, откуда взялось и есть ли способ от него избавиться? Сейчас разберемся.

Со времен появления первых аркадных автоматов в 70-ых годах видеоигры работают на 60 FPS. Обычно предполагается, что игра должна работать с той же скоростью, что и дисплей. Только после популяризации 3D-игр нам пришлось столкнуться и принять более низкую частоту кадров. Еще в 90-х годах, когда «3D-карты» (которые теперь называют «графическими процессорами») начали заменять программный рендеринг, люди спокойно играли с частотой 20 кадров в секунду, а 35 FPS считалась уже частотой для серьезных соревнований по сети.

Теперь же мы располагаем сверхбыстрыми машинами, которые, конечно же, могут летать на 60 FPS. Тем не менее… похоже, что недовольных производительностью теперь стало больше, чем когда-либо. Как это возможно?

Дело не в том, что игры работают недостаточно быстро. А в том, что они фризятся даже с высокой производительностью.

Если вы пробежитесь по игровым форумам, то, вероятно, встретите в заголовках тем что-то вроде такого:

image
ПК-геймеры часто жалуются, что игры страдают от статтеринга даже при отсутствии проблем с частотой кадров.

Можно предположить, что это единичные случаи, но такие допущения развеивает статистика поиска в Google:

image
За последние 5 лет статтеринг стал (относительно) большей проблемой, чем производительность.

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

Десятилетие поиска причин статтеринга

Пациент точно жив. Просто часто фризится.

Впервые автор столкнулся с этой проблемой где-то в 2003 году во время работы над Serious Sam 2. Люди стали сообщать о случаях, когда во время тестирования на пустом уровне движения экрана и мыши оказывались не плавными. Это сопровождалось очень специфическим паттерном на графике частоты кадров, который команда разработки назвала «сердцебиением».

Первой мыслью было то, что где-то в коде закралась ошибка, но никто не смог ее найти. Казалось, что проблема появлялась и исчезала случайным образом — при перезапуске игры, перезагрузке компьютера… но стоило изменить какой-либо параметр производительности, и она исчезала. Затем можно было поменять параметр обратно, и все продолжало работать идеально. Проблема-призрак.

Очевидно, проблема была не только в «Сэме». При запуске других игр она возникала точно так же, наводя на мысли, что тут что-то с драйверами. Но появление статтеринга не зависело от производителя вашего графического процессора. Оно имело место даже при разных API (OpenGL, DirectX 9, DirectX 11…). Единственное, что оставалось общим, так это что статтеринг появлялся то тут, то там на некоторых машинах и игровых сценах.

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

Затем внезапно, в один прекрасный зимний день в начале 2013 года, ребята из Croteam обнаружили еще один пример этой проблемы, который на тот момент можно было относительно последовательно воспроизводить — на этот раз на одном из уровней в «Серьезном Сэме 3». Они долго возились с той сценой, пока вдруг не осенило. Все было настолько просто — неудивительно, что целое десятилетие это ускользало от всеобщего внимания.

Изменив всего одну простую опцию в игровом движке, у них получилось решить эту проблему. Однако сразу стало ясно, что на самом деле решение потребует гораздо больше времени и усилий. И не только от конкретной команды, но и от всей игровой экосистемы: разработчиков драйверов ГП, специалистов по сопровождению API, поставщиков ОС — всех.

Что происходило все это время

Вот как это выглядит, когда игра «тормозит» даже при 60 FPS. Вы могли испытать нечто подобное, играя в любую современную игру, и, вероятно, первым делом подумали бы, что игра не оптимизирована. Что ж, давайте пересмотрим эту теорию.

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

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

Как такое возможно?

Давайте рассмотрим это подробнее. Ниже представлено параллельное сравнение идеального плавного видео и видео со статтерингом:

image
Шесть последовательных кадров с точной синхронизацией. Наверху — правильно расположенные кадры, внизу — кадры со статтерингом.

Здесь можно увидеть две вещи: во-первых, они действительно работают с одинаковой скоростью: всякий раз, когда появляется новый кадр сверху (правильный), тогда же появляется новый кадр и снизу (статтеринг). Во-вторых, по какой-то причине кажется, что они двигаются немного иначе — в середине изображения есть заметный «разрыв», который колеблется между большим и меньшим разделением по времени.

Самые внимательные могут заметить еще одну любопытную деталь: нижнее изображение — якобы более «медленное»… на самом деле идет «впереди» правильного. Странно, не правда ли?

Если мы посмотрим на несколько последовательных кадров и их время, мы можем наблюдать еще кое-что интересное: первые два кадра идеально синхронизированы, но на третьем кадре дерево на «более медленном» видео значительно опережает свой аналог на «правильном» видео (обведено красным). Также можно заметить, что этот кадр явно занял больше времени (обведено желтым).

Подождите, подождите… но если видео «медленнее», а кадр «занял больше времени», то как оно может идти с опережением?

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

Краткая история синхронизации кадров

Давным-давно, в далекой-далекой галактике… когда разработчики создавали первые видеоигры, обычно они это делали с учетом точной частоты кадров, на которой работал дисплей. В регионах NTSC, где телевизоры работают с частотой 60 Гц, это подразумевает 60 кадров в секунду, а в регионах PAL/SECAM, где телевизоры работают с частотой 50 Гц, — 50 кадров в секунду.

Большинство игр представляли собой очень простые концепции, работающие на фиксированном оборудовании — обычно на аркадной консоли или хорошо известном «домашнем микрокомпьютере», таком как ZX Spectrum, C64, Atari ST, Amstrad CPC 464, Amiga и т. д. Таким образом, создавая и тестируя игры для конкретной машины и определенной частоты кадров, разработчик всегда мог быть на 100% уверен, что фреймрейт никогда никуда не упадет.

Скорости объектов также сохранялись в «кадровых» единицах. Таким образом, вам необходимо было знать не на сколько пикселей в секунду будет перемещаться персонаж, а на сколько пикселей в кадре. Например, в Sonic The Hedgehog для Sega Genesis такая скорость составляет 16 пикселей на кадр. Многие игры даже имели отдельные версии для регионов PAL и NTSC, где анимация рисовалась от руки специально для 50 и 60 FPS, соответственно. По сути, работа с любой другой частотой кадров была просто невозможна.

И поскольку со временем игры стали запускаться на более разномастных устройствах, включая ПК с постоянно расширяемым и обновляемым оборудованием, нельзя было точно знать, на какой частоте кадров будет работать игра. Этот факт усугублялся тем, что сами игры стали более сложными и непредсказуемыми — особенно это заметно в 3D-играх, где могут быть большие различия в сложности сцены, иногда даже определяемые самими игроками. Например, всем же нравится стрелять по штабелям бочек с горючим, тем самым вызывая красочную череду взрывов… и неизбежное падение частоты кадра. Но поскольку это весело, то никто и не против.

Поэтому сложно предсказать, сколько времени потребуется для моделирования и рендеринга одного кадра. (Обратите внимание, что на современных консолях у нас, можно считать, фиксированное оборудование, но сами игры при этом все равно довольно непредсказуемы и сложны.)

Если вы не можете быть уверены, с какой частотой кадров будет работать игра, вам необходимо измерить текущую частоту кадров и постоянно адаптировать физику игры и скорость анимации под нее. Если один кадр занимает 1/60 секунды (16,67 мс), а ваш персонаж бежит со скоростью 10 м/с, то он перемещается на 1/6 метра в каждом кадре. Но если кадр вдруг начнет занимать 1/30 секунды (33,33 мс), то вы должны перемещать персонажа уже на 1/3 метра за кадр (в два раза «быстрее»), чтобы он продолжал двигаться с той же видимой скоростью.

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

Вернее, раньше работал очень хорошо. Еще в 90-х, когда 35 FPS считалась ого-го какой скоростью, люди были им более чем довольны. Но в то время видеокарты не были столь значительной частью ПК, и контроль надо всем происходящим на экране имел центральный процессор. Если у вас не было 3D-ускорителя, он даже сам рисовал объекты. Таким образом, он точно знал, когда они попадут на экран.

Ситуация на сегодняшний день

Со временем стали появляться все более сложные графические процессоры, и они неизбежно становились все более и более «асинхронными». Это означает, что когда ЦП дает команду ГП отрисовать что-то на экране, ГП просто сохраняет эту команду в буфере, чтобы ЦП мог продолжать свои дела, пока ГП выполняет рендеринг. В конечном итоге это приводит к ситуации, когда ЦП сообщает графическому процессору, когда наступает конец кадра, а графический процессор, сохраняя это среди своих данных, на самом деле не считает это чем-то приоритетным — ведь он все еще обрабатывает некоторые из ранее выданных команд. Он покажет кадр на экране только тогда, когда выполнит все, чем его загрузили до этого.

Итак, когда игра пытается вычислить время, вычитая временные метки в начале двух последовательных кадров, релевантность этого, откровенно говоря… весьма сомнительна. Поэтому вернемся к нашему примеру. Там у нас были такие кадры:

image
Шесть последовательных кадров с точной синхронизацией. Верхний ряд — правильный, нижний — с эффектом статтеринга.

В первых двух кадрах время кадра составляет 16,67 мс (или 1/60 секунды), и камера перемещается на одинаковую величину в верхнем и нижнем случаях, поэтому деревья синхронизированы. В третьем кадре (внизу, со статтерингом) игра увидела, что время кадра составляет 24,8 мс (то есть, больше 1/60 секунды) и оттого думает, что частота кадров упала, и бросается нагонять пропущенное… только для того, чтобы обнаружить, что на следующем кадре время составляет всего 10,7 мс, отчего камера замедляется, и теперь деревья снова более или менее синхронизированы.

Что же происходит? Измеряемое игрой время кадра колеблется из-за различных факторов — особенно в загруженной многозадачной системе, такой как ПК. Поэтому в некоторые моменты времени игра полагает, что частота упала с 60 FPS, и генерирует кадры анимации, рассчитанные на более низкую частоту кадров. Но из-за асинхронного характера работы ГП она всегда так или иначе возвращается к тем же 60 кадрам в секунду.

Это и есть статтеринг — анимация, сгенерированная для переменной частоты кадров (сердцебиения), отображающаяся с фактической правильной фиксированной частотой кадров.

Так что по существу можно считать, что никакой проблемы нет — все идет гладко, просто игра этого не знает.

Это подводит нас к тому, о чем мы говорили в начале статьи. Когда мы, наконец, выяснили причину проблемы (хотя мы знаем, что это иллюзия проблемы — ведь на самом деле проблемы нет, не так ли?), мы можем применить следующую волшебную пилюлю.

Что это за пилюля? В Serious Engine она обозначается как sim_fSyncRate = 60. Проще говоря, это означает вот что: «полностью игнорировать все эти махинации с синхронизацией и делать вид, что мы всегда измеряем стабильные 60 кадров в секунду». И это заставляет все работать гладко — только потому, что с самого начала все работало гладко! Единственная причина, по которой появлялся статтеринг, — это неправильное время, используемое для анимации.

И что же, на этом все?

Значит, решение настолько просто?

К сожалению, нет. Это было просто только на тестах. Если бы мы прекратили измерять частоту кадров в реальных условиях и просто предположили, что она всегда равна 60 FPS, тогда, когда она упадет ниже 60 — а на ПК она рано или поздно упадет по какой бы то ни было причине: работа программ в фоновом режиме, сохранение энергии или защита от перегрева, кто знает, — тогда все замедлится.

Итак, если мы измеряем время кадра, происходит статтеринг, а если нет, в какой-то момент все может замедлиться. И что тогда?

Реальным решением было бы измерение не времени начала/окончания рендеринга кадра, а времени, когда изображение показывается на экране.

Но как игра может узнать, когда кадр действительно отображается на экране?

Да никак: в настоящий момент этого сделать невозможно.

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

Что теперь?

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

Ведется работа по предоставлению похожих и более лучших решений, хотелось бы верить, что уже во всех основных графических API. Когда? Сложно сказать, ведь проблема глубоко врезается в различные подсистемы ОС.

Тем не менее, мы надеемся, что вскоре это станет доступным для более широкой общественности.

Различные предостережения и другие детали

Будем считать, что это конец основного текста. Разделы ниже представляют собой «бонусные функции», в основном независимые друг от друга и от описанного выше.

«Композитор»

image
Это что, эффект матового стекла? Ага, так вот почему у нас обязательно должен быть композитор. Довольно важно, не правда ли?

Во всем этом за кулисами задействована концепция под названием Compositing Window Manager, также известная как композитор. Это система, которая теперь присутствует в каждой ОС и позволяет окнам быть прозрачными, иметь размытый фон, тени и т. д. Композиторы могут пойти и дальше — и показывать окна ваших программ в 3D. Для этого композитор берет на себя управление самой последней частью кадра и решает, что с ним делать, непосредственно перед тем, как он попадает на монитор.

В некоторых ОС композитор можно отключить в полноэкранном режиме. Но это не всегда возможно, и даже в таких случаях — разве не можем мы запустить игру в оконном режиме?

Управление питанием и температурой VS сложность рендеринга

Мы также должны принять во внимание тот факт, что современные ЦП и ГП не работают с фиксированной частотой, но у обоих есть системы, которые регулируют их скорость вверх и вниз в зависимости от нагрузки и текущей температуры. Таким образом, игра не может просто предположить, что они будут иметь одинаковую скорость от кадра к кадру. С другой стороны, операционная система и драйверы не могут ожидать, что игра будет выполнять одинаковый объем работы в каждом кадре. Сложные системы связи между двумя сторонами должны быть спроектированы таким образом, чтобы все это принималось во внимание.

Микрофризы, статтеры в играх

Всем привет! Недавно собрал новый пк и столкнулся с микрофризами в таких играх как GTA 5, GTA 4, Batman Arkham Origins, Far Cry 5, Far Cry 3, все они идут со статтерами, видео приложу ниже. Пробовал отключать турбо буст, выставлял XMP профиль на 3200Гц, толку ноль. OC Windows 10 Pro, датчики температуры в норме.

Посмотрел видео, в чём проблема не понял.

А надо просто гсинк фрисинк моник, попыриться чуть с настройкой и забыть про разрывы и фризы.

И на какой минуте проблема? Обычная подгрузка текстур, при переходе из одной локации в другую.

У тебя ничего не фризит, фреймтайм на дверях это нормально. Ты потратил мое время зря и нет тебе прощения.

Очередная уже хз какая по счету тема о статерах от челика который купил амуде вместо процессора

Интелбой закукарекал, лол. Тебя не звали

Интел так же статерит, на топовых сборках. Это вопрос не Интела или АМД, но вопрос качественного отношения к своим потребителям.

Я на статеры и на интеле насмотрелся уже от души.

Не завидую тебе раз ты видишь такие вещи.

Разгон жд прекрасен

Если после выставления xmp, ваши полномочия на этом все, то лучше не покупать первые и вторые райзены) Так как мозги они могут поебать знатно, прежде чем все заработает нормально) Нужно было брать 3500х или дальше копить) Причин стартеров может быть миллион. Вольтажа мало на проце, либо наоборот много. Тоже самое с вальтажом ОЗУ, не говоря ещё про тайминги и частоту. Последний биос, нормальная винда, драйвера на чипсет, амд баланс в профиле питания, засранные накопители, иллюминаты и масоны, а так же заговор ютуберов говорящих что райзен тащит, а он не тащит и тд.

Судя по графику у тебя не фризы а условный 0.1% low в районе 30 фпс вместо 75, микрофризами это никак не назвать. Это норма.

[Перевод] Ста-ста-статтеринг, или откуда в игре берутся микрофризы и как с ними бороться

Вот вы скачиваете себе ранее оплаченный предзаказ. Завершается установка, вы запускаете игру. Все идет хорошо: игра «летает» с частотой кадров 60 FPS. Или, во всяком случае, так говорит вам счетчик кадров в оверлее вашего GPU. Но что-то идет не так. Вы водите мышкой туда-сюда и замечаете, что игра… фризится.

Как это возможно? Какие еще фризы при 60 FPS?

Это может казаться смешным до тех пор, пока не столкнешься с этим сам. Если вы встречались с такими фризами, то наверняка уже успели их возненавидеть.

Это не лаги. Не низкий фреймрейт. Это статтеринг. При высоких FPS и идеальной сверхбыстрой конфигурации.

Что это такое, откуда взялось и есть ли способ от него избавиться? Сейчас разберемся.

Со времен появления первых аркадных автоматов в 70-ых годах видеоигры работают на 60 FPS. Обычно предполагается, что игра должна работать с той же скоростью, что и дисплей. Только после популяризации 3D-игр нам пришлось столкнуться и принять более низкую частоту кадров. Еще в 90-х годах, когда «3D-карты» (которые теперь называют «графическими процессорами») начали заменять программный рендеринг, люди спокойно играли с частотой 20 кадров в секунду, а 35 FPS считалась уже частотой для серьезных соревнований по сети.

Теперь же мы располагаем сверхбыстрыми машинами, которые, конечно же, могут летать на 60 FPS. Тем не менее… похоже, что недовольных производительностью теперь стало больше, чем когда-либо прежде. Как это возможно?

Дело не в том, что игры работают недостаточно быстро. А в том, что они фризятся даже с высокой производительностью.

Если вы пробежитесь по игровым форумам, то, вероятно, встретите в заголовках тем что-то вроде такого:

image

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

Можно предположить, что это единичные случаи, но такие допущения развеивает статистика поиска в Google:

image
За последние 5 лет статтеринг стал (относительно) большей проблемой, чем производительность.

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

Десятилетие поиска причин статтеринга

Пациент точно жив. Просто часто фризится.

Впервые автор столкнулся с этой проблемой где-то в 2003 году во время работы над Serious Sam 2. Люди стали сообщать о случаях, когда во время тестирования на пустом уровне движения экрана и мыши оказывались не плавными. Это сопровождалось очень специфическим паттерном на графике частоты кадров, который команда разработки назвала «сердцебиением».

Первой мыслью было то, что где-то в коде закралась ошибка, но никто не смог ее найти. Казалось, что проблема появлялась и исчезала случайным образом — при перезапуске игры, перезагрузке компьютера… но стоило изменить какой-либо параметр производительности, и она исчезала. Затем можно было поменять параметр обратно, и все продолжало работать идеально. Проблема-призрак.

Очевидно, проблема была не только в «Сэме». При запуске других игр она возникала точно так же, наводя на мысли, что тут что-то с драйверами. Но появление статтеринга не зависело от производителя вашего графического процессора. Оно имело место даже при разных API (OpenGL, DirectX 9, DirectX 11…). Единственное, что оставалось общим, так это что статтеринг появлялся то тут, то там на некоторых машинах и игровых сценах.

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

Затем внезапно, в один прекрасный зимний день в начале 2013 года, ребята из Croteam обнаружили еще один пример этой проблемы, который на тот момент можно было относительно последовательно воспроизводить — на этот раз на одном из уровней в «Серьезном Сэме 3». Они долго возились с той сценой, пока вдруг не осенило. Все было настолько просто — неудивительно, что целое десятилетие это ускользало от всеобщего внимания.

Изменив всего одну простую опцию в игровом движке, у них получилось решить эту проблему. Однако сразу стало ясно, что на самом деле решение потребует гораздо больше времени и усилий. И не только от конкретной команды, но и от всей игровой экосистемы: разработчиков драйверов ГП, специалистов по сопровождению API, поставщиков ОС — всех.

Что происходило все это время

Вот так это выглядит, когда игра «тормозит» даже при 60 FPS. Вы могли испытать нечто подобное, играя в любую современную игру, и, вероятно, первым делом подумали бы, что «игра не оптимизирована». Что ж, давайте пересмотрим эту теорию.

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

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

Как такое возможно?

Давайте рассмотрим это подробнее. Ниже представлено параллельное сравнение идеального плавного видео и видео со статтерингом:


Шесть последовательных кадров с точной синхронизацией. Наверху — правильно расположенные кадры, внизу — кадры со статтерингом.

Здесь можно увидеть две вещи: во-первых, они действительно работают с одинаковой скоростью: всякий раз, когда появляется новый кадр сверху (правильный), тогда же появляется новый кадр и снизу (статтеринг). Во-вторых, по какой-то причине кажется, что они двигаются немного иначе — в середине изображения есть заметный «разрыв», который колеблется между большим и меньшим разделением по времени.

Самые внимательные могут заметить еще одну любопытную деталь: нижнее изображение — якобы более «медленнее»… на самом деле идет «впереди» правильного. Странно, не правда ли?

Если мы посмотрим на несколько последовательных кадров и их время, мы можем наблюдать еще кое-что интересное: первые два кадра идеально синхронизированы, но на третьем кадре дерево на «более медленном» видео значительно опережает свой аналог на «правильном» видео (обведено красным). Также можно заметить, что этот кадр явно занял больше времени (обведено желтым).

Подождите, подождите… но если видео «медленнее», а кадр «занял больше времени», то как оно может идти с опережением?

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

Краткая история синхронизации кадров

Давным-давно, в далекой-далекой галактике… когда разработчики создавали первые видеоигры, обычно они это делали с учетом точной частоты кадров, на которой работал дисплей. В регионах NTSC, где телевизоры работают с частотой 60 Гц, это подразумевает 60 кадров в секунду, а в регионах PAL/SECAM, где телевизоры работают с частотой 50 Гц, — 50 кадров в секунду.

Большинство игр представляли собой очень простые концепции, работающие на фиксированном оборудовании — обычно на аркадной консоли или хорошо известном «домашнем микрокомпьютере», таком как ZX Spectrum, C64, Atari ST, Amstrad CPC 464, Amiga и т. д. Таким образом, создавая и тестируя игры для конкретной машины и определенной частоты кадров, разработчик всегда мог быть на 100% уверен, что фреймрейт никогда никуда не упадет.

Скорости объектов также сохранялись в «кадровых» единицах. Таким образом, вам необходимо было знать, не на сколько пикселей в секунду будет перемещаться персонаж, а на сколько пикселей в кадре. Например, в Sonic The Hedgehog для Sega Genesis такая скорость составляет 16 пикселей на кадр. Многие игры даже имели отдельные версии для регионов PAL и NTSC, где анимация рисовалась от руки специально для 50 и 60 FPS, соответственно. По сути, работа с любой другой частотой кадров была просто невозможна.

И поскольку со временем игры стали запускаться на более разнообразных устройствах, включая ПК с постоянно расширяемым и обновляемым оборудованием, нельзя было точно знать, на какой частоте кадров будет работать игра. Этот факт усугублялся тем, что сами игры стали более сложными и непредсказуемыми — особенно это заметно в 3D-играх, где могут быть большие различия в сложности сцены, иногда даже определяемые самими игроками. Например, всем же нравится стрелять по штабелям бочек с горючим, тем самым вызывая красочную череду взрывов… и неизбежное падение частоты кадра. Но поскольку это весело, то никто и не против.

Поэтому сложно предсказать, сколько времени потребуется для моделирования и рендеринга одного кадра. (Обратите внимание, что на современных консолях у нас, можно считать, фиксированное оборудование, но сами игры при этом все равно довольно непредсказуемы и сложны.)

Если вы не можете быть уверены, с какой частотой кадров будет работать игра, вам необходимо измерить текущую частоту кадров и постоянно адаптировать физику игры и скорость анимации под нее. Если один кадр занимает 1/60 секунды (16,67 мс), а ваш персонаж бежит со скоростью 10 м/с, то он перемещается на 1/6 метра в каждом кадре. Но если кадр вдруг начнет занимать 1/30 секунды (33,33 мс), то вы должны перемещать персонажа уже на 1/3 метра за кадр (в два раза «быстрее»), чтобы он продолжал двигаться с той же видимой скоростью.

Читать:
Av asw что это за папка

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

Вернее, раньше работал очень хорошо. Еще в 90-х, когда 35 FPS считалась ого-го какой скоростью, люди были им более чем довольны. Но в то время видеокарты не были столь значительной частью ПК, и контроль надо всем происходящим на экране имел центральный процессор. Если у вас не было 3D-ускорителя, он даже сам рисовал объекты. Таким образом, он точно знал, когда они попадут на экран.

Ситуация на сегодняшний день

Со временем стали появляться все более сложные графические процессоры, и они неизбежно становились все более и более «асинхронными». Это означает, что когда ЦП дает команду ГП отрисовать что-то на экране, ГП просто сохраняет эту команду в буфере, чтобы ЦП мог продолжать свои дела, пока ГП выполняет рендеринг. В конечном итоге это приводит к ситуации, когда ЦП сообщает графическому процессору, когда наступает конец кадра, а графический процессор, сохраняя это среди своих данных, на самом деле не считает это чем-то приоритетным — ведь он все еще обрабатывает некоторые из ранее выданных команд. Он покажет кадр на экране только тогда, когда выполнит все, чем его загрузили до этого.

Итак, когда игра пытается вычислить время, вычитая временные метки в начале двух последовательных кадров, релевантность этого, если говорить прямо… весьма сомнительна. Поэтому вернемся к нашему примеру. Там у нас были такие кадры:


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

В первых двух кадрах время кадра составляло 16,67 мс (или 1/60 секунды), и камера перемещается на одинаковую величину в верхнем и нижнем случаях, поэтому деревья синхронизированы. В третьем кадре (внизу, со статтерингом) игра увидела, что время кадра составляет 24,8 мс (то есть, больше 1/60 секунды) и оттого думает, что частота кадров упала, и бросается нагонять пропущенное… только для того, чтобы обнаружить, что на следующем кадре время составляет всего 10,7 мс, отчего камера замедляется, и теперь деревья снова более или менее синхронизированы.

Что же происходит? Измеряемое игрой время кадра колеблется из-за различных факторов — особенно в загруженной многозадачной системе, такой как ПК. Поэтому в некоторые моменты времени игра полагает, что частота упала с 60 FPS, и генерирует кадры анимации, рассчитанные на более низкую частоту кадров. Но из-за асинхронного характера работы ГП она всегда так или иначе возвращается к тем же 60 кадрам в секунду.

Это и есть статтеринг — анимация, сгенерированная для переменной частоты кадров (сердцебиения), отображающаяся с фактической правильной фиксированной частотой кадров.

Так что по существу можно считать, что никакой проблемы нет — все идет гладко, просто игра этого не знает.

Это подводит нас к тому, о чем мы говорили в начале статьи. Когда мы, наконец, выяснили причину проблемы (хотя мы знаем, что это иллюзия проблемы — ведь на самом деле проблемы нет, не так ли?), мы можем применить следующую волшебную пилюлю.

Что это за пилюля? В Serious Engine она обозначается как sim_fSyncRate = 60. Проще говоря, это означает вот что: «полностью игнорировать все эти махинации с синхронизацией и делать вид, что мы всегда измеряем стабильные 60 кадров в секунду». И это заставляет все работать гладко — только потому, что с самого начала все работало гладко! Единственная причина, по которой появлялся статтеринг, — это неправильное время, используемое для анимации.

И что же, на этом все?

Значит, решение настолько просто?

К сожалению, нет. Это было просто только на тестах. Если бы мы прекратили измерять частоту кадров в реальных условиях и просто предположили, что она всегда равна 60 FPS, тогда, когда она упадет ниже 60 — а на ПК она рано или поздно упадет по какой бы то ни было причине: работа программ в фоновом режиме, сохранение энергии или защита от перегрева, кто знает, — тогда все замедлится.

Итак, если мы измеряем время кадра, происходит статтеринг, а если нет, в какой-то момент все может замедлиться. И что тогда?

Реальным решением было бы измерение не времени начала/окончания рендеринга кадра, а времени, когда изображение показывается на экране.

Но как игра может узнать, когда кадр действительно отображается на экране?

Да никак: в настоящий момент этого сделать невозможно.

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

Что теперь?

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

Ведется работа по предоставлению похожих и более лучших решений, хотелось бы верить, что уже во всех основных графических API. Когда? Сложно сказать, ведь проблема глубоко врезается в различные подсистемы ОС.

Тем не менее, мы надеемся, что вскоре это станет доступным для более широкой общественности.

Различные предостережения и другие детали

Будем считать, что это конец основного текста. Разделы ниже представляют собой «бонусные функции», в основном независимые друг от друга и от описанного выше.

«Композитор»

image
Это что, эффект матового стекла? Ага, так вот почему у нас обязательно должен быть композитор. Довольно важно, не правда ли?

Во всем этом за кулисами задействована концепция под названием Compositing Window Manager , также известная как композитор. Это система, которая теперь присутствует в каждой ОС и позволяет окнам быть прозрачными, иметь размытый фон, тени и т. д. Композиторы могут пойти и дальше — и показывать окна ваших программ в 3D. Для этого композитор берет на себя управление самой последней частью кадра и решает, что с ним делать, непосредственно перед тем, как оно попадает на монитор.

В некоторых ОС композитор можно отключить в полноэкранном режиме. Но это не всегда возможно, и даже в таких случаях — разве не можем мы не запустить игру в оконном режиме?

Управление питанием и температурой VS сложность рендеринга

Мы также должны принять во внимание тот факт, что современные ЦП и ГП не работают с фиксированной частотой, но у обоих есть системы, которые регулируют их скорость вверх и вниз в зависимости от нагрузки и текущей температуры. Таким образом, игра не может просто предположить, что они будут иметь одинаковую скорость от кадра к кадру. С другой стороны, операционная система и драйверы не могут ожидать, что игра будет выполнять одинаковый объем работы в каждом кадре. Сложные системы связи между двумя сторонами должны быть спроектированы таким образом, чтобы все это принималось во внимание.

А не могли бы мы просто…

Не могли бы. �� Обычно измерение времени ГП предлагается как альтернатива времени отображения. Но при этом не учитывается наличие композитора и тот факт, что ни один из таймеров рендеринга ГП по факту не синхронизируется напрямую с обновлением дисплея. Для идеальной анимации нам определенно нужно точно знать время, когда изображение было выведено на экран, а не когда оно закончило рендеринг.

Микрофризы и статтеры. Одно из решений ⁠ ⁠

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

Для начала хочу показать как это выглядело до фикса. Обратите внимание на график времени кадра:

Конфигурация моего ПК: i5-9400F, B365M, 16Gb DDR4 2666, 1660Ti, Windows 10

В первую очередь в биосе отключаем HPET (High Precision Event Timer) таймер событий высокой точности. Если его нет в вашей версии биоса, то отключить нужно в диспетчере устройств:

Микрофризы и статтеры. Одно из решений Фризы, Решение проблемы, Ведьмак 3: Дикая охота, Видео, Длиннопост

Далее запускаем командную строку от имени администратора и отключаем динамический тикрейт в винде (напомню, это касается только Windows 10) этими командами:
bcdedit /set useplatformclock false жмем Enter

bcdedit /deletevalue useplatformclock жмем Enter

bcdedit /set disabledynamictick yes жмем Enter

Перезагружаемся 2 раза (это важно!). Проверяем результат. Думаю разница очевидна.

Я не даю 100% гарантии что Ваша проблема фризов именно в этой настройке, но как один из вариантов можно попробовать. Надеюсь кому-нибудь смог помочь. Спасибо за внимание.

Наоборот, это надо делать при включенном HPET. Чтобы программные таймеры не конфликтовали с высокоточными аппаратными: https://eu.forums.blizzard.com/ru/overwatch/t/решение-жуткие-лаги-фризы-тормоза-overwatch/10051

Иллюстрация к комментарию

Зачем два раза ребутить ?

бля чувак, спасибо тебе огромное, я сидел 2 недели искал решения, как же я рад что фризов стало в 100 раз меньше, бывает проскакивает 1 очень редко, а так всё гуд стало, ещё раз спасибо большое)

КонсультантПлюс⁠ ⁠

КонсультантПлюс Юмор, Консультант, ЛГБТ, Консультантплюс, Повтор, Картинка с текстом

с просторов интернета

Ответ на пост «Откуда эти люди?»⁠ ⁠

@BarisG, все эти люди (или те из них, кто говорит правду) — одинокие и с так называемым кризисом среднего возраста.

Я, похоже, представитель этой группы, хоть и вышла за её пределы по возрасту — мне уж стукнуло 33. Детей не нажила за свой век. Отношений тоже (что-то периодически бывает, но крайне не везёт: последние отношения длились с полгода и закончились моими рогами, класс).

Так как с отношениями мне не везло всегда, я давненько стала направлять свои силы в сторону работы/карьеры, и поэтому с реализацией в работе и с деньгами у меня проблем нет. А вот с ощущением собственной нужности — ещё какие проблемы.

Поэтому я ввязываюсь во всякие активности: например, прошлым летом начала учиться играть на барабанах, а осенью успешно прошла прослушивание на вокал в группу (уже даже один концерт состоялся в начале марта, юху).
Подарила жене брата сертификат в мотошколу, чтобы когда у нас стает снег, вместе пойти учиться.
С гитаристом из группы забились летом прыгать с парашютом.
Хожу на всяческие рок-концерты (например, в ближайший месяц пойду на "Люмен" и "Пилот" ), а также в театр (в эту среду пойду на "Анну Каренину", а в воскресенье на мюзикл, хехе). А ещё летом поеду на рок-фестиваль, уже второй раз.
Два раза была на сплаве, и в этом году опять планирую "сплавиться" хотя бы разок.
Раз в неделю занимаюсь с психологом.
Люблю гулять пешком (под музыку или с кем-то под разговор) и читать книги.

Ипотеку, кстати, плачу: обременённых лишними квартирами родственников не было и нет, в родительской живёт мама и брат с женой.

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

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

Сорян, что в конце скатилась в нытьё)
Жалости не прошу, советов тоже.

Спасибо за внимание. Всем любви 💚

Терзают смутные сомнения⁠ ⁠

Терзают смутные сомнения

Бухгалтерия⁠ ⁠

Работал в одной компании, и очень понравилась одна девушка из бухгалтерии. Все время на неё смотрел когда пересекались в офисе, однажды набрался смелости, и предложил сходить после работы поужинать в ресторан. Девушка хихикнула, сказала «я подумаю» и убежала по своим делам.

Спустя пару дней сижу за своим рабочим столом, работаю работу, вдруг на меня падает чья-то тень. Поднимаю глаза, надо мной стоит наш главбух. Очень строгая женщина.

— Это ты Ирину в ресторан приглашал?

— Так вот — говорит она — если тебе нужны проститутки, можешь даже не искать их в нашей бухгалтерии.

И пошла цокая каблучками.

Считаем дюбель TECH-KREP⁠ ⁠

На упаковке заявлено количество в 100 штук.

Считаем дюбель TECH-KREP Дюбель, Обман, Длиннопост, Счет

Открываем и считаем, оказалось 85 штук.

Считаем дюбель TECH-KREP Дюбель, Обман, Длиннопост, Счет

Милота⁠ ⁠

Милота

Ответ на пост «Откуда эти люди?»⁠ ⁠

Решила как-то тоже зарегаться на тиндере. 36, в/о, без детей, мужей, в/п, м/п. Думаю, дай посмотрю, что там девушки пишут-то.

Мама дорогая! Меня прям комплексы накрыли. У всех проф.фото, Инста как буклет пятизвездного отеля, и долбаное это «Саморазвитие». Бачата, будь она неладна. Тарологи, астрологи, прочие суетологи.

Сижу и думаю, а мне-то что писать? Инсты нет, фоткаться не люблю. Из отпусков — пейзажи на фото. Ну не додумалась я в зеркалах отелей и под пальмами себяшек наделать.

Увлечения. Ну вот дачу купила, стройка у меня там. Помидоры опять же. Рукодельничать люблю разнообразно. За грибами люблю ходить, могу весь отпуск в лесу провести. Пешком люблю гулять. Всё не формат. Из подходящего один сноуборд только (честные 3 раза за зиму). Ну и, каммон, кто-то не любит путешествовать.

Ладно. Кого я там ищу? Ну. как бы мужика бы адекватного, +/- ровню хотелось бы. Значит с руками, работой, без жестких в/п и м/п. Чтоб любил на природе время проводить. Пофиг мне, какого он роста-веса. Я и сама не модель далеко.

Открываем мужские анкеты. Все по клубам, на вейке, в бизнесе и развитии, на Бмв непременно, с фотками в дорогом спортзале.. Бля. ну где я, и где мужик из спортзала? Он хотя бы на котиков может ТАК смотреть, как на свои банки в зеркале??

Короче, подохренела и закрыла этот ваш тиндер нафиг.

На вопрос ТС могу предположить, что все неформатные туда просто не попадают.

Девушки с губами «А я риба, я риба» вполне себе ЦА тех вылизанных парней, у которых барбер для фотосессии стоит дороже моих путешествий. Алгоритмы выводят в топ самых павлинистых, усиливая такое впечатление. Это просто тусовка с определенными правилами для узкого круга позёров.

Ээх, хоть на рыбалку иди знакомиться. Так зашикают же. Рыбаки, они ж тишину любят)

Ответ на пост «Сидел человек , гладил котика , никого не трогал»⁠ ⁠

26 февраля сидели с мужем в ТЦ Планерная на фудкорте. Подходят трое лиц без национальности(явно горячий молодняк), просят помочь с деньгами. Муж ответил отказом. Они: почему? Тебе проблемы нужны?
Я почуяла, что пахнет жареным. Незаметно для них вынула свою перцовку Шпагу. Один сел рядом со мной и говорит:"ты что, перцовку только купила? Пользоваться умеешь?"(тот что в очках)
Я:"а ты хочешь на себе испробовать? Легко!"
Первые начали оскорблять мужа, а на меня давить. Муж вызвал Полицию (находится в соседнем здании, которая в итоге не приехала). Зачем-то первые начали нас снимать. И тут же потихоньку ретировались с фудкорта. Охрана ТЦ пошла за ними, но толку? Их просто выставили на улицу. Вот что удалось заснять:

Мы вышли из ТЦ, эти люди стояли у выхода, ожидая нас. Муж не торопясь курил, те пытались его провоцировать, говоря, какое он ничтожество, что ходит в дешёвой обуви. Уехали на маршрутке в сторону Химок. Охранники ТЦ говорят, что они часто тусуются здесь и донимают людей.
Будьте осторожны, мы думаем, что они под камерами специально провоцируют людей на конфликт чтобы заработать на этом.
Несколько месяцев назад в ТЦ планерная меня прокляла цыганка, потому что я не дала денег. Есть видео, но это уже совсем другая история.

Когда торг не удался⁠ ⁠

Когда торг не удался Авито, Продажа, Переписка, Скриншот

В итоге приехалА и купила за 6)
Продавал новую оперативную память, которая не подошла в сборку, по цене куда ниже магазинов.

Записки продавца-консультанта в пивном⁠ ⁠

Записки продавца-консультанта в пивном Истории из жизни, Пиво, Крафтовое пиво, Длиннопост, Покупатель, Клиенты

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

1. мужчина спрашивает светлое, не горькое, фильтрованное, примерно 4.2%. Показываю 3-5 ходовых по его запросу, спрашивает дальше — и всё? Показываю ещё примерно 10 кранов (всего в магазине 50 кранов) какие то совсем легкие по градусам, какие то крепче классических, некоторые с легкой хмелевой горчинкой, попутно рассказываю отличия друг от друга. Начинает спрашивать про другие, которые ему не показал,
-а это?
— а это нефильтрованное
— а вот какое то еще у вас тут
— а вот это тёмный крепкий эль
-эх, а вот еще какое то?
-фруктовое, вишня.
Стоит втыкает дальше, за ним заходит постоянный клиент, любитель горьких пилснеров, хвойных IPок итп, заказывает три полторашки пилснера, несколько разных ипашек по 0.5, пару банок с полок
Первый наблюдает уверенность, обьемы, спрашивает у второго:
-че, вкусное вот это?
-да, очень хорошее, постоянно пью
Расплачивается, уходит.
Первый тоже заказывает полтора горчущего пилснера.
Не стал отговаривать, пусть уроком будет, а может и что-то новое для себя откроет.

2. Предпраздники, защитники отечества, выпивающие по две три полторашки самого дешевого пивка каждый день решают устроить себе ОСОБЕННЫЙ день, запрос звучит так: — таааакс, давайте уж сегодня этого вашего крафтовского попробуем, чего его так хвалят все, праздник же, надо что то невероятное, интересное. Фильтрованное. Хорошее. Вкусное. Светлое. Без этих ваших всяких манг и мандаринов. И без горечи. елок. Цитрусов-хуитрусов.

3.Мужчина просит налить любого, говорю:
— критерии какие? Горько, сладко, кисло, крепко. темное или светлое хотяб?
— говорю ж любого, критериев нет, хорошего, вкусного
Показываю бельгийский трипель под 500р за литр.
-такой наливаю, пойдет?
-эээ, так оно денег стоит, хуяси. Бла бла
-ну так не было критерия никакого, предложил заведомо хороший сорт, крепкий, богатый, насыщенный итд
-не давай вон то, за сотку

4. Покупатель:
-дайте самого плотного!
-вас светлое, темное интересует?
-говорю же самое плотное!
-показываю краны с имперским портером, бочковым стаутом, озвучиваю плотность в 25/30, рассказываю особенности сорта, вкусовые нюансы. Кофейный аромат, послевкусие жареного арахиса, вискарная бочка.
-нет нет, ты не понял, без этих всяких ваших кофев и орехов, нужно нормальное плотное, как раньше, как в ссср, как масло подсолнечное лилось итд (классические эпитеты жиге).
Берёт жигулевочку 13% начальное плотности, уходит счастливый.

Если контент интересен, могу рассказать ещё, хватает, накопилось, практически ежедневно копится ещё .
А так же про закулисье хорошего магазина с пивом могу рассказать всем интересующимся

Концертные будни⁠ ⁠

Концертные будни Король и Шут, Михаил Горшенев, Музыканты, Комментарии на Пикабу, Скриншот

С возрастом игрушки меняются. ⁠ ⁠

С возрастом игрушки меняются. Call of Duty, Call of Duty: Modern Warfare, Таблетки, Геймеры, Игры, Компьютерные игры, Повтор

Узнали?⁠ ⁠

Узнали? Полицейская академия, Сериалы, Возраст, Ностальгия, Было-стало, Повтор, Актеры и актрисы

Ха Twitter, Скриншот, Рисунок на снегу, Мемы, Доктор Ливси, Остров сокровищ, Повтор

Идеальная история⁠ ⁠

Всегда мечтал сделать именно так! Жаль, не курю и Раммштайн не слушаю, но НерВольф отомстил за всех нас)

Идеальная история Комментарии на Пикабу, Скриншот, Пляж, Наглость, Шум, Наушники

В каком ?⁠ ⁠

В каком ?

Microsoft заверила, что GPT-4 не будет повышать глобальный уровень безработицы⁠ ⁠

ИИ сможет переводить текст пользователя в музыку, картинки и видосы. GPT-4 станет в 537 раз «способнее» предшественника.

Microsoft заверила, что GPT-4 не будет повышать глобальный уровень безработицы Юмор, Gpt, Нейронные сети, Microsoft

Спасибо менеджерам, дизайнерам, программистам, девопсам, и всем тем, кто помог нам сделать эту нейронку! Удачи вам в поисках другой работы! © Майкрософт

На волне про Тиндер⁠ ⁠

Я на Тиндере сижу года 3-4, с перерывом на отношения, двое из которых, кстати, начались с Тиндера. Попробую написать о жестких знакомствах, которые были. Свиданий за это время было около 50-60 (может больше), переписок штук 250, если не больше.
О себе: 35 лет, разведен уже больше 5 лет, есть ребенок, которого забираю к себе 2-3 раза в неделю, с вредными привычками (курю, могу выпить раз в недельку), материально обеспечен, машина, квартира, 2-3 раза в год поездки куда-то.

Чисто по моей статистике: первая девушка напишет 2-3 из 100, из них только одна оказалась реальной девушкой (остальные хз, потихоньку пытались разводить), с которой можно встретиться, но как оказалось с огромными тараканами. Остальные, которые писали первыми оказались разводилами. Не буду расписывать развод типа: «Давай спишемся в мессенджере», а потом «инет кончился, пополни, плиз» — тут как бы итак понятно.
Если в вкратце, то начинают как обычно общаться, говорят, что не в городе/регионе, поэтому встретиться получиться только через месяц-два. Начинается все спокойно: доброе утро, спокойной ночи, что делаешь и тд. Через пару дней фоточки из ресторанчиков, магазинов, дорогих интерьеров. Через недельку начинается интересное! Приблизительно такие фразы:
— Я параллельно с работой тут занята разными проектами. Инвестирую.
— У меня есть аналитик, который мне говорит куда вложить.
— Сегодня не пойду на работу, а поеду в спа. Вчера хорошо заработала на акциях, хочу отпраздновать.
— А я тут вложила в одни акции и подняла за пару дней свою месячную зп.
— Хочешь также? Давай сведу с моим аналитиком.
В общем, развод прост) Прочитайте о таком в интернетах этих ваших, там много, кто попался.
Еще одно мое наблюдение: очень часто находиться онлайн в мессенджере, при этом твое сообщение прочтет через фиг знает сколько времени, видимо много клиентов, но это не точно))

Следующий тип девушек: содержанки, любительницы «погламурить».
— Давай встретимся?
— Окей, где?
— Знаешь, я люблю тихие места, где вкусно готовят и можно посидеть, как в домашней обстановке.
— Давай. Где хочешь?
— *Название кафе*
— Ну нет! Давай лучше в *1* или *2* (раскрученные, мажорные заведения)
Если ты соглашаешься, то по приходу закажет себе всяких вкусностей, нафоткается с едой, столом, официантом, зеркалом в туалете. Будет вещать о том, как она везде ездит, занимается чем-то легким, но очень доходным. Пустой треп, ни о чем. Очень будет интересоваться: где ты живешь, на чем ездишь, где работаешь, какие перспективы у тебя, где был в отпуске — все, что тебя показывает материально.
Только одна призналась, что она содержанка и ищет мужика, который будет ей все позволять и покупать. (это из разряда «а я тебе писечку»)
В общем, хороший способ проверить девушку — это пригласить ее в ноу-нейм тихое кафе, где вам нравиться кухня.
Кстати, большинство таких девушек считают себя прям очень гурманами, сомелье, профессиональными поварами и тд. Очень интересно было наблюдать, когда сидели у моего друга в ресторане и девушке наливали вина разные, чтобы она его попробовала. Столько гламура. Пипец. Учитывая, что друг имеет свои виноградники в Испании и жил в Италии лет пять, работая в оптовой компании по поставкам вина в Россию. Она не угадала нигде! Было смешно))
Еще очень нравиться выражение лица, когда они выбирают еду и когда им приносят ее. Столько отвращения от официантов, попытки показать себя разбирающейся в блюдах, всякие цоканья и тд. А потом «цезарь с креветкой», потому что видимо другие названия на другом языке.
*Честно, я часто хожу в рестораны, я в курсе того, что там вкусно или нет, почти в каждом. Мне в этих мажорных не нравиться! Это основано и на ценнике ни за что и на обслуживании и интерьере, музыке и тд! В общем, для некоторых я нищеброд, который прикрывается какой-то херней, чтобы принцессу не вести в хорошее место.*

Следующий тип девушек: которым «что-то надо».

Пара совпала, идет переписка в Тиндере, через пару-тройку дней переходите в мессенджер, некоторое время еще там общаетесь, потом идете в кафе/ресторан, потом еще пару раз встречаетесь, может даже спите.
Далее начинается требования к тебе, чтобы ты что-то помог/сделал/съездил/купил и т.д.
Реальные диалоги (на тот момент общение недели 2-3):
— Я запланировала ремонт в ванной. Приедешь, поможешь мне, а то дорого берут «молдаване»?
— Я не умею класть плитку, сантехнику подключить конечно могу, но лучше пусть сделает специалист.
— Ну найди мне специалиста, все посчитай, проверь и тд.. Я же девочка!
*Да без проблем помогу, но давай учитывать моё время! Тогда был завал с работой и она знала об этом*

— Хочу в Питер на белые ночи, поехали?
— Я ближайший месяц сильно занят по работе.
— Ну ты же начальник! Возьми отпуск!
— Я не могу, от меня зависит тут многое в это время.
— Ну тогда с подругой поеду, купи мне билет и реши что-то в квартирой, а ты может приедешь на выходные к нам?

— Ты занят?
— Да.
— Смотри, мне тут надо на кухню дополнительный ящик купить, ты же разбираешься?
— Слушай, я сейчас у стоматолога, сижу в кресле и мне не сильно удобно разговаривать.
— Вот смотри, я звонила в одну контору, но там прям дорого, в другой надо замерщика вызывать, потом еще ждать месяц, а я не могу уже так жить! Где что можно сделать? Я была еще там-то, смотрела на таком-то сайте.
— Я реально не могу сейчас говорить, давай через часик-два, скажу где-то взять.
— Ну ты и душный!!

Лежу, болею гриппом, температура 39, еле-еле могу до туалета дойти, она в курсе этого.
— А сегодня пойду в кино без тебя, потому что тебе пофигу на то, что мне скучно!!

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

Конечно, это крайние случаи, я встречал и очень милых и хороших девушек там, с которыми было приятно общаться.
Просто Тиндер стал социальной сетью, он стоит даже у моих некоторых знакомых, которые находятся в отношениях, даже замужем и с детьми! Тут водимо им необходимо получать свою долю лайков и внимания, а может и что получше перепадет?)) Ну каждой же нужен запасной вариант или френдзонщик?)) Кстати, одна призналась в переписке, что этим выводит мужа из себя и у них после ссор очень приятное примирение и всякие подарочки)).
Я выработал простой алгоритм для поиска действительно хорошей девушки с помощью Тиндера. Учитывая, что одно свидание обходиться в 5-10 тыс (букетик 2, такси туда-сюда 1, кафе/рестик), поэтому проверено и временем и деньгами.
Модельные фоточки, утиные губки, мэйк-апы, купальнички на яхтах, бассейнах, дубаи, дорогие тачки и тд — сразу нет! Более того, скорее всего даже пара не совпадет))
Если при общении идут однотипные «прикольно», «работаю», «отдыхаю» и тд, то даже не пытайтесь, просто потратите время и, может быть, деньги. Переписывайтесь с теми, кто тоже проявляет интерес к Вам, задает вопросы, реагирует на юмор. Даже не пытайтесь, если этого нет. Я слышал от одной, что она ставит лайки всем подряд, чтобы больше писали, ей было от этого приятно.
Если у Вас уже переписка идет полным ходом, уже обсуждаете прям откровенные темы и тут она пишет, что «в постели я ураган! никто не жаловался никогда, я вообще мастер спорта по сексу!» — в подавляющем большинстве это не так! Далеко не так! Я думаю, что это может быть набивание цены.

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

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

З.Ы. Пару диалогов, которые меня поставили в ступор.
Первое свидание, переписывались пару дней. Забрал ее на машине, едем в кафе.
— У меня есть ребенок, я разведен уже несколько лет.
— Плохо. Значит ты на своего ребенка будешь тратить свое время, а нашим детям нужно будет все твое время!!

Переписка в мессенджере.
— Чтобы продолжить со мной общение, докажи мне, что ты заблокировал свою бывшую жену, я не хочу, чтобы ты с ней общался!!
— Но у меня с ней общение по воспитанию общего ребенка как бы.
— Тогда и про ребенка забудь! Вот скидывай ей алименты и пусть сама разбирается!!

Похожие статьи