Оговорюсь сразу. Данная статья не наша, она взята с сайта www.callofduty.ru и в ней указан автор Всеволод "Gagarin" Виноградов. А теперь непосредственно к статье: Влияние FPS на пинг (на количество пересылаемых пакетов). Является общей для любой части Call of Duty Заходим по этой ссылке и попадаем на FPS Calculator http://www.funender.com/quake/articles/fps.html вводите своё значение фпс и количество пакетов, заданных в консоли и нажимаем calculate. высвечивается процент от прыжка и высота прыжка (верны только для квейка 3, для CoDa они левые) и высвечивается реальное количество пакетов, а также рекомендуемое кол-во пакетов, т.е. если стабильные 125 фпс есть, то выставляем в консоли cl_maxpackets 63, что означает 2 команды/пакет Чтобы определить кол-во fps , которое можно ограничить посредством консольной команды, воспользуётесь формулой 1000/x , где x - любое целое числ Влияние FPS на высоту прыжков Для чистоты эксперимента была создана тренировочная карта, представляющая из себя множество стенок различной высоты. Ну и соответственно подбирались разные значения FPS для преодоления этих стенок до 63 фпс персонаж прыгает максимум до 39.5 юнитов (исключения составляют 52 и 55 фпс. Эти 2 значения являются аналогами 71 фпс) 71 фпс !!!! персонаж стабильно прыгает до 40 units !! Хотя 40.5 преодолеть не смог. Тоже самое при 76 фпс 83 фпс, 90 фпс и 100 фпс оставили желать лучшего - не смогли преодолеть планку даже в 40 юнитов 110 фпс - с лёгкостью преодолел 40 и 40.5 юнитов 125 фпс - рубеж в 41 юнит был успешно осилен 142, 166 и 200 фпс - опять невнятный провал. персонаж преодолевает максимум 39.5 юнитов 250 фпс - рубеж в 42 юнита покорён =) 333 фпс - покорён рубеж до 46 юнитов включительно. Также появляеться способность бежать бесшумно. Но только при беге боком =) 500 фпс - глючное значение фпс. персонаж бегает бесшумно , но при этом в высоту не потянул даже 35 юнитов , но это просто подойти и подпрыгнуть. Если отойти на некоторое расстояние и совершить прыжок, то преодолевает рубеж до 39 юнитов 1000 фпс - ящик не потянул, но судя по высоте прыжка , значение является аналогом 500 фпс Влияние FPS на урон от падения с высоты (Fall damage) Результаты для Call of Duty 4 : Очередное небольшое исследование ФПС, вполне логично последовавшее из прошлых материалов. Чел с кодджампера подал идею, ну я эту идею воплотил в цифры. Суть предельно проста. 4 стенки 4-х высот. 140, 200, 300 и 350. Разные значения фпс (взяты как критические, так и промежуточные) Результаты : (сначала величина фпс, затем в скобках высота стенки и последнее значение - получаемый урон) 71 (140) - 4 91 (140) - 8 100 (140) - 6 110 (140) - 4 125 (140) - 2 200 (140) - 6 250 (140) - 1 333 (140) - 0 71 (200) - 39 91 (200) - 44 100 (200) - 41 110 (200) - 38 125 (200) - 35 200 (200) - 41 250 (200) - 34 333 (200) - 22 71 (300) - 96 91 (300) - dead 100 (300) - 98 110 (300) - 94 125 (300) - 91 200 (300) - 98 250 (300) - 88 333 (300) - 72 71 (350) - dead 91 (350) - dead 100 (350) - dead 110 (350) - dead 125 (350) - dead 200 (350) - dead 250 (350) - dead 333 (350) - 97 В конечном итоге я бы разложил показатели фпс в таком порядке, от бОльшего к меньшему (по их полезности) : 333, 250, 125, 110, 76, 71 (фпс аналогами являются 34,42,52,55), 100 (фпс аналогами являются 10,17,20-23,25,36,40,41,50,67 и 200), 15 (фпс аналогами являеются 24, 31,32,37,38,45,48,63), 59 (непонятно, почему при падении с этим фпс урон больше, чем у его подобных в близком интервале), 91,83 (фпс аналог 166), 142. Самое жёсткое это 500 фпс (персонажа притягивает к земле магнитом и он получает урон , в разы превышающий все остальные) Влияние FPS на частоту шумности бега персонажа Данное исследование изначально предполагалось для выявления формулы вычисления зависимости заданного количества мс (милисекунд) от FPS. То есть, к примеру, нам нужно было написать скрипт, при котором персонаж топал бы вперёд в течение 30 мс. Но при разном значении FPS, персонаж и расстояние проходил разное. То есть при установленных 30 мс персонаж при 333 фпс проходил всего 3 юнита, а при 125 - 20 (результаты даны для примера, так я уже смутно помню, какие реальные). К сожалению, формулу я так и не вычислил, однако в голову пришла другая мысль. Так как я уже до этого писал, что при разных значениях FPS персонаж топает по-разному (всмысле чаще), то я понял, как можно определить максимально пробегаемую дистанция без шума и , благодаря моду от sERGE-002, вычислил значения. Если выбрали SMG, trench (дробовик) или снайпера бег вперёд ( максимальная скорость 190 юнитов в секунду) 333 фпс - 80 (79 бесшумно) (264 мс) 250 фпс - 81 (81 бесшумно) (186 мс) 200 фпс - 87 (87 бесшумно) (167 мс) 167 фпс - 70 (70 бесшумно) (107 мс) 142 фпс - 70 (70 бесшумно) (92 мс) 125 фпс - 73 (72 бесшумно) (84 мс) 111 фпс - 66 (65 бесшумно) (68 мс) 100 фпс - 67 (66 бесшумно) (61 мс) 90 фпс - 69 (68 бесшумно) (58 мс) 83 фпс - 63 (62 бесшумно) (48 мс) 77 фпс - 65 (64 бесшумно) (46 мс) 71 фпс - 66 (65 бесшумно) (43 мс) бег боком (152 юнита в секунду) 333 фпс - бегает бесшумно 250 фпс - 68 (68 бесшумно) 210 мс 200 фпс - 68 (68 бесшумно) 171 мс 167 фпс - 75 (75 бесшумно) 155 мс 142 фпс - 56 (56 бесшумно) 99 мс 125 фпс - 58 (57 бесшумно) 91 мс 111 фпс - 60 (59 бесшумно) 81 мс 100 фпс - 54 (53 бесшумно) 66 мс 90 фпс - 54 (53 бесшумно) 60 мс 83 фпс - 57 (57 бесшумно) 57 мс 77 фпс - 52 (51 бесшумно) 47 мс 71 фпс - 52 (51 бесшумно) 46 мс бег назад (133 юнита в секунду) 333 фпс - 50 (49 бесшумно) 250 фпс - 54 (53 бесшумно) 200 фпс - 58 (57 бесшумно) 167 фпс - 46 (45 бесшумно) 142 фпс - 46 (46 бесшумно) 125 фпс - 49 (48 бесшумно) 111 фпс - 44 (43 бесшумно) 100 фпс - 44 (43 бесшумно) 90 фпс - 44 (43 бесшумно) 83 фпс - 42 ( 41 бесшумно) 77 фпс - 42 ( 41 бесшумно) 71 фпс - 41 (40 бесшумно) Если выбрали главное оружие автомат (класс Assault) бег вперёд (180 юнитов в секунду) 333 фпс - бегает бесшумно 250 фпс - 81 (80 бесшумно) 202 мс 200 фпс - 84 (83 бесшумно) 171 мс 167 фпс - 90 (89 бесшумно) 151 мс 142 фпс - 69 (68 бесшумно) 96 мс 125 фпс - 73 (72 бесшумно) 88 мс 111 фпс - 73 (72 бесшумно) 80 мс 100 фпс - 64 (63 бесшумно) 62 мс 90 фпс - 68 (67 бесшумно) 60 мс 83 фпс - 66 (66 бесшумно) 54 мс 77 фпс - 64 (63 бесшумно) 47 мс 71 фпс - 63 (62 бесшумно) 44 мс бег боком (144 юнита в секунду) 333 фпс - бегает бесшумно 250 фпс - 65 (64 бесшумно) 212 мс 200 фпс - 66 (65 бесшумно) 174 мс 167 фпс - 72 (71 бесшумно) 160 мс 142 фпс - 56 (55 бесшумно) 106 мс 125 фпс - 58 (57 бесшумно) 92 мс 111 фпс - 59 (58 бесшумно) 86 мс 100 фпс - 61 (60 бесшумно) 80 мс 90 фпс - 54 (53 бесшумно) 64 мс 83 фпс - 53 (53 бесшумно) 59 мс 77 фпс - 54 (53 бесшумно) 55 мс 71 фпс - 51 (50 бесшумно) 48 мс бег назад (126 юнита в секунду) 333 фпс - 49 (48 бесшумно) 257 мс 250 фпс - 54 (53 бесшумно) 216 мс 200 фпс - 55 (54 бесшумно) 175 мс 167 фпс - 45 (44 бесшумно) 112 мс 142 фпс - 44 (43 бесшумно) 100 мс 125 фпс - 46 (45 бесщумно) 87 мс 111 фпс - 41 (40 бесшумно) 73 мс 100 фпс - 41 (42 бесшумно) 65 мс 90 фпс - 43 (42 бесшумно) 62 мс 83 фпс - 40 (39 бесшумно) 52 мс 77 фпс - 40 (39 бесшумно) 47 мс 71 фпс - 41 (40 бесшумно) 46 мс Класс "Heavy Gunner"(главное оружие пулемёты) бег вперёд (166 юнитов в секунду) 333 фпс - бегает бесшумно 250 фпс - 75 (74 бесшумно) 206 мс 200 фпс - 77 (77 бесшумно) 171 мс 167 фпс - 84 (83 бесшумно) 154 мс 142 фпс - 65 (64 бесшумно) 100 мс 125 фпс - 66 (65 бесшумно) 90 мс 111 фпс - 70 (70 бесшумно) 85 мс 100 фпс - 71 (70 бесшумно) 80 мс 90 фпс - 63 (63 бесшумно) 61 мс 83 фпс - 63 (63 бесшумно) 58 мс 77 фпс - 65 (65 бесшумно) 55 мс 71 фпс - 58 (57 бесшумно) 45 мс бег боком (133 юнита в секунду) 333 фпс - бегает бесшумно 250 фпс - 64 (63 бесшумно) 218 мс 200 фпс - 64 (63 бесшумно) 189 мс 167 фпс - 69 (68 бесшумно) 167 мс 142 фпс - 71 (70 бесшумно) 147 мс 125 фпс - 55 (54 бесшумно) 100 мс 111 фпс - 54 (53 бесшумно) 86 мс 100 фпс - 55 (54 бесшумно) 83 мс 90 фпс - 50 (49 бесшумно) 66 мс 83 фпс - 51 (50 бесшумно) 62 мс 77 фпс - 51 (50 бесшумно) 58 мс 71 фпс - 52 (51 бесшумно) 54 мс бег назад (116 юнита в секунду) 333 фпс - бегает бесшумно 250 фпс - 51 (50 бесшумно) 225 мс 200 фпс - 53 (52 бесшумно) 196 мс 167 фпс - 56 955 бесшумно) 165 мс 142 фпс - 44 (43 бесшумно) 116 мс 125 фпс - 44 (43 бесшумно) 95 мс 111 фпс - 44 (43 бесшумно) 87 мс 100 фпс - 39 (38 бесшумно) 70 мс 90 фпс - 41 (40 бесшумно) 65 мс 83 фпс - 40 (39 бесшумно) 60 мс 77 фпс - 40 (39 бесшумно) 54 мс 71 фпс - 38 (37 бесшумно) 48 мс Наверное, вся эта ересь кажется непонятной. Так что поясняю : " 142 фпс - 44 (43 бесшумно) 116 мс" означает что при 142 фпс и установленном скриптом значении времени пробега 116 милисекунд персонаж пробегает 43 юнита бесшумно и на 44 юнит он уже издёт шум. Иногда, если удачно пробежать, то "бесшумный предел" совпадает с "шумным пределом", но это происходило нечасто и являлось , судя по всему, глюком движка. Ну что можно сказать в целом. Почему при 333 фпс персонаж бегает бесшумно, я так и не догнал. Возможно, бесшумная дистанция пробега персонажа при 333 настолько высока, что перекрывает с лихвой саму максимальную скорость. Но с другой стороны ассултеры боком бегают бесшумно , а назад - почему-то нет. Выводы по всем остальным значениям делаете сами. Лично я сделал вывод, что значение фпс, близкое к максимальной скорости персонажа, является оптимальным (например 200 фпс при 190 (максимальная скорость) юнитах дают бесшумный пробег в 87 юнитов. А при 166 фпс и 180 юнитов в секунду вообще 90 бесшумных юнитов). По поводу того, почему я не взял значения фпс ниже 71. Во-первых я за*пался, во-вторых при низких значениях FPS малейшее изменение дистанции в 1 мс дают очень большой разброс. То есть при фпс 50 и при 50 мс персонаж пробегает 50 юнитов. А при 51 мс - уже 54. В любом случае, бесшумная дистанция с понижением FPS сокращается. Предельный пробег для любого класса персонажей- около 45 юнитов в секунду Специальное исследование FPS на передвижение персонажа При изучении влияния ФПС на передвижение персонажа , мне пришла мысль вычислить предел, по которому можно определить, почему бегает персонаж бесшумно при таком значении ФПС, а почему нет. В качестве исследования я взял бег боком для обладателей SMG и для обладателей пистолетов (это код 2 разумеется. Шумность персонажа не изменилась, несмотря на то, что 4-ю часть IW создавали 2 года). Эти данные 159 и 167 соответственно (кстати скорость бега боком меньше на 20% от бега вперёд. А бега назад сразу на 30%. То есть,например, 190*0.8=159). В качестве примера я взял оружие стен и начал менять его скорость в файлах игры (менял вес оружия, соответственно менялась и скорость). Опытным путём я обнаружил число-скорость 160 юнитов/секунду (хотя я до сих пор сомнеювась, что скорость измеряется юнитов в секунду). Если брать скорость 161 и ФПС 333 , то персонаж боком бегать не будет. А если 159 и 160 - будет. Я задумался , только ли это при 333 фпс. И решил попробовать вычислить общий множитель для бега боком. Для этого я просто поделил 160 на 333 и получил множитель 0.48048048 (048 в периоде). Округлил до 0.48. Дальше взял и умножил следующее значение ФПС , а именно 250, на 0.48. Получил 120 юнитов в секунду. Дальше вычислил вес оружие , каким оно должны быть, чтобы установилась скорость 120 юнитов, установил его , проверил и оно сработало ! При 250 фпс и скорости, не превышающей 120 юнитов, персонаж боком бегает бесшумно. Далее чисто математически. 200 фпс * 0.48 = 95 юнитов. И т.д. Вычислил скорость бесшумного бега вперёд и назад. Для бега вперёд при 333 ФПС максимальная скорость равна 188 юнитам в секунду. Соответственно общее частное будет 188/333 = 0.564564. Соответственно для 250 ФПС максимальная бесшумная скорость пробега будет 250*0.564564 = 141 юнит в секунду Для бега назад максимальная бесшумная скорость равна 122 юнитам. Общее частное - 0.366366.
|