net graph в css

Тема в разделе "Всякое", создана пользователем reset-full, 27 ноя 2011.

  1. reset-full

    reset-full

    Сообщения:
    33
    Симпатии:
    9
    [​IMG]

    Net-graph - это многофункциональная утилита, встроенная в движок Half-Life. Одно из качеств это полный контроль за качеством соединения клиент-сервер в течении игры.

    Для отображения net_graph, напишите в консоли net_graph 1 (значения 2 и 3 имеют другой стиль отображения и содержание показываемых данных). Чтобы выключить net_graph значение 0. Вы можете регулировать размер и положение net_graph на экране, с помощью net_graphpos и net_graphwidth команд. Для установки net_graph слева используйте net_graphpos 3, в центре значение 2, и справа значением 1, которое является значением по умолчанию. Ширину можно изменить параметром net_graphwidth.
    Теперь разберем net_graph по элементам.
    Элемент А.
    Здесь все просто, показывается текущее значение FPS, в моем случае 98.8 кадра в сек.
    [​IMG]
    Элемент B.
    Здесь похитрее. Это не ping как можно было подумать. Это задержка обработки пакетов на сервере от текущего клиента.
    [​IMG]
    Элемент C.
    В рамке показано текущее значение пакета, которое клиент принял от сервера, в моем примере это значение 34 байта и среднее значение скорости приема данных 4.93 кбайт в сек.
    [​IMG]
    Элемент D.
    Здесь наоборот текущий пакет отосланный на сервер, на примере 15 байт, а также скорость передачи данных 4.78 кБайт в сек.
    [​IMG]
    Элемент Е.
    Не что иное как параметр cl_cmdrate
    [​IMG]
    Элемент F.
    Еще одно значение параметра cl_updaterate
    [​IMG]
    Элемент G.
    [​IMG]
    Элемент G-2.
    [​IMG]
    Элемент G-3.
    Элемент G отображает наш ping в виде линии. Если ping скачет, то и форма линии будет ломаться. Две зеленые черточки по краям обозначают ping равный 0, Линия двигается справа налево в зависимости от нашего значения cl_updaterate, При увеличении параметра скорость возрастает, и наоборот. Скорость линии также зависит от серверного параметра sv_maxupdaterate. Если сервер поставит значение 30, то это принудительно установит вам значение cl_updaterate на 30. Все public-сервера ставят значение sv_maxupdaterate равным 30, для экономии пропускной способности канала. Линия должна идти ровно. Если появляются лаги, на линии появляются пики. Красные точки на линии отображают значение Элемента G-2, loss, это потерянные пакеты к серверу. Желтые точки обозначают Элемент G-3, chokе, «удушье». Этот случай возникает, когда сервер не может передать больше пакетов, чем вы запрашиваете.
    [​IMG]
    Элемент H.
    [​IMG]
    Элемент H-2.
    Элемент Н показывает как наш клиент отрисовывает кадры. Хочется заметить, что помимо наших графических FPS, есть еще и сетевые кадры в секунду, но они в принципе жестко взаимосвязаны, разницу между FPS клиента и сервера как раз и корректируют параметры cl_updaterate, cl_cmdrate, ex_interp. Так вот, для каждого нормально «отрисованного» пакета на net_graph ставиться синяя точка. Желтые, оранжевые, красные точки обозначают задержанные или пропущенные пакеты ставятся выше белых черточек по бокам. Показано на примере Элемента H-2. Если вы не принимаете достаточное количество пакетов с сервера (<10 в секунду) (красные точки), тогда мы используем не интерполяцию, а экстраполяцию (красные точки), а это совсем плохо. Т.е. вы видите человека в одной точке, а через секунду в другом. Лучшим значением интерполяции (ex_interp) будет всегда только 1/cl_updaterate, либо 0 когда CS сама устанавливает это значение автоматически.
    [​IMG]
    Элемент I.
    [​IMG]
    Элемент I-2.
    Последний элемент. Эта линия должна быть фиолетовой и это непосредственно относиться к вашему fps и fps сервера. Для каждого кадра (фрейма), который был послан и принят на сервере, на линию ставиться фиолетовая точка. Если команда была отклонена к передаче, ставится красная точка. Другими словами красные точки возникают, если ваш компьютер отрисовывает кадры быстрее, чем вы отсылаете их на сервер. Или если ваш fps больше fps сервера. Это из-за того, что ваше значение cl_cmdrate слишком мало.
    [​IMG]

    В итоге:
    FPS = 100, cl_cmdrate = 50 – красные точки (невозможно послать запрошенные фреймы, например: пропуск ваших действий, стрельбы)
    FPS = 100, cl_cmdrate = 100 – нет красных точек (посылка точных обновлений – высокая точность обновлений)
    FPS = 50, cl_cmdrate = 100 – нет красных точек (использование дублированных кадров – нерациональное использование пропускной способности канала, пример: плохая точность позиционирования)
    Т.е. красные точки означают, что ваш клиент отсылает фреймы недостаточно часто, и изменение параметра cmdrate поможет исправить эту проблему.
    Я надеюсь, этот материал поможет изучить net_graph. Значение net_graph 2 не так важно для вас если вы не маппер или разработчик. Оно просто показывает тип и размер данных отсылаемых на сервер, и управляется значением net_scale.

    Думаю каждого игрока юзующего net_graph посещал вопрос, а как переместить его в другую сторону или поставить по центру...
    так вот ответ:
    Регулирование строки вверх или вниз:
    net_graphheight
    По умолчанию стоит 64, это снизу, значит чем выше значение тем выше будет net_graph
    Регулирование лево или право.
    Тут всё проще, всего 3 значения (слева, поцентру и справа)
    net_graphpos (1 справа) (2 по центру) (3 слева)
     
    NagarD нравится это.
  2. Alcone

    Alcone optizone.ru

    Сообщения:
    319
    Симпатии:
    72