Всадники Кальрадии

Модификации => Обмен опытом (в помощь мододелу) => Тема начата: world_silmarillion@bk.ru от 04 Августа, 2016, 18:30

Название: О соотношении размеров и величин в игре
Отправлено: world_silmarillion@bk.ru от 04 Августа, 2016, 18:30
О соотношении размеров и величин в игре

Долгое время было множество вопросов по устройству внутриигрового мира "Mount&Blade" - соотношение размера, массы, длины, объёма, защиты, урона.
Собственно в данной теме хочу поделиться тем что узнал сам, и услышать других кому есть что сказать, что бы в конце концов у всех могла сложиться так сказать целостная картина по устройству игрового мира "Mount&Blade".
Возможно всё о чём я сейчас здесь напишу кому то уже давно известно, у тех прошу прощения за потраченное в пустую время.
Итак начнём.


1. Размеры объектов и соответственно их моделей в игре.

Посмотрев множество моделей игры и их свойства в фале MS(Module_system) module_items.py, пришёл к выводу, что при просмотре модели в программе "openBrf",величина стороны одной  ячейка приблизительно равна 50см (0,5м). Позже нашёл подтверждение этому от разработчиков игры - в файле spear.brf, который находится в папке моделий игры  ...\CommonRes, чётко прописаны размеры моделий копий.
(https://1.downloader.disk.yandex.ru/preview/d35136f8a7f737186b4be033f3f3911edbedad6a5deb82ac7b73c7f853749f5c/inf/r4DPqpe6oJ99_pim0Lbc7eHWaYt_SjY28xf4wYDu4y72fgLo_n8oyb6bGTCxhdU0fDqrHX2MhmSlLyXIGT4vpw%3D%3D?uid=251117738&filename=0000015.jpg&disposition=inline&hash=&limit=0&content_type=image%2Fjpeg&tknv=v2&size=903x459)

 Из всех моделий представленных в "spear.brf", только у модели "spear_a_3m" есть заслуживающее внимания отклонение от общего алгоритма - длина ячейки = 50см, остальные модели с минимальными отклонениями соответствуют ему. Из чего можно установить - сторона ячейки = 50см и в дальнейших выводах опираться на этот факт.
 Исходя из размеров одной ячейки = 50см, можно определить, что по умолчанию, рост мужчины и женщины в игре = приблизительно 3,6 ячейки = 3,6 х 50 = 180см = 1,8м. Обратим внимание на этот факт, так как размеры и свойства многих вещей в "Игре" зависят от роста юнитов заданного по умолчанию, что подробнее мы рассмотрим ниже.

(https://3.downloader.disk.yandex.ru/preview/43e8e25ff9f1bf1585da6a51c2dd2adce1b9b63d5ef2fe6deb543241887a50ed/inf/r4DPqpe6oJ99_pim0Lbc7dg4sgkv1Q6CgKEbN_vZdyUSlX6uBBA5RF6hhiMYj5yf_OUv63e7qCozuaRU1cxwUw%3D%3D?uid=251117738&filename=0000014.jpg&disposition=inline&hash=&limit=0&content_type=image%2Fjpeg&tknv=v2&size=903x459)

Следует сказать, что при создании нового юнита, модель его тела следует делать так же размером около 3,6 ячейки в "openBrf", а потом уже увеличивать до нужного размера в "module_skins.py", увеличивая скелет :
"...
    "skel_human", 1.0,
 ..."

Иначе, если вы сделаете юнитам размер сильно отличающийся от стандартного, они будут криво отображаться в презентациях.
(https://3.downloader.disk.yandex.ru/preview/975fc8e35010ccb9d8c4efd7d79e0a7c950c65835020ae3329b3674fc6414e1c/inf/r4DPqpe6oJ99_pim0Lbc7equmECwXos1StD6WXld44Knms7uco31k9k8MpQ8HiP2j71yr2hb0j-kij-39oQRtg%3D%3D?uid=251117738&filename=0000022.jpg&disposition=inline&hash=&limit=0&content_type=image%2Fjpeg&tknv=v2&size=903x459)
(https://2.downloader.disk.yandex.ru/preview/91971b0044b1f954253383c37aa4c6d1d200e708ebf8cd3b63d4115e2fd18d3a/inf/r4DPqpe6oJ99_pim0Lbc7d4FNu35QfvcELoTyrz3VTnfGYqXEP0yQ9ND0KEJQQMO3Ye_shtHjLGvInpVMe0SvQ%3D%3D?uid=251117738&filename=0000023.jpg&disposition=inline&hash=&limit=0&content_type=image%2Fjpeg&tknv=v2&size=903x459)


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


2. Поговорим о соотношении моделей оружия, их размеров и свойств в игре.

Здесь сразу следует отметить, что размеры оружия и доспехов, которые прописаны в инвентаре каждого отдельного юнита, зависят от размера скелета этого юнита, указанного в "module_skins.py".  Так например если стандартный  ..."skel_human", 1.0,...  уменьшить в два раза ..."skel_human", 0.5,... , то и оружие и доспехи этого юнита визуально автоматически уменьшаются в 2 раза, а следовательно надо уменьшать в 4 раза(уменьшаем ширину и длину/высоту, а толщину не изменяем) массу их оружия, доспехов, щитов. И не забываем уменьшить силу юнитам меньшего размера.

Из оружия начнём с копий.
Вернёмся к файлу "spear.brf", моделям копий в нём описанном, и свойстам копий с этими моделями описанных в файле "module_items.py", а затем посмотрим как это выглядит в игре.

Модель "spear_b_2-75m" :
 Длина модели в "openBrf" ориентировочно - 2.7м
 Радиус поражения у данной модели в "module_items.py" - 175
["light_lance", "Light Lance", [("spear_b_2-75m",0)], itp_couchable|itp_type_polearm|itp_offset_lance|itp_merchandise|itp_primary| itp_penalty_with_shield|itp_wooden_parry, itc_cutting_spear, 180 , weight(2.5)|difficulty(0)|spd_rtng(85) | weapon_length(175)|swing_damage(16 , blunt) | thrust_damage(27 ,  pierce),imodbits_polearm ], 

Модель "spear_e_2-5m","spear_c_2-5m" :
 Длина модели в "openBrf" ориентировочно - 2.5м
 Радиус поражения у данной модели в "module_items.py" - 155
["military_scythe", "Military Scythe", [("spear_e_2-5m",0),("spear_c_2-5m",imodbits_bad)], itp_type_polearm|itp_offset_lance| itp_merchandise| itp_primary|itp_penalty_with_shield|itp_wooden_parry, itc_staff|itcf_carry_spear, 155 , weight(2.5)|difficulty(0)|spd_rtng(90) | weapon_length(155)|swing_damage(36 , cut) | thrust_damage(25 ,  pierce),imodbits_polearm ],

Модель "spear_g_1-9m" :
 Длина модели в "openBrf" ориентировочно - 1.9м
 Радиус поражения у данной модели в "module_items.py" - 120
["shortened_spear", "Shortened Spear", [("spear_g_1-9m",0)], itp_type_polearm|itp_offset_lance|itp_merchandise|itp_primary| itp_wooden_parry, itc_staff|itcf_carry_spear, 53 , weight(2.0)|difficulty(0)|spd_rtng(102) | weapon_length(120)|swing_damage(19 , blunt) | thrust_damage(25 ,  pierce),imodbits_polearm ],

Модель "spear_i_2-3m" :
 Длина модели в "openBrf" ориентировочно - 2.25м
 Радиус поражения у данной модели в "module_items.py" - 150
["war_spear", "War Spear", [("spear_i_2-3m",0)], itp_type_polearm|itp_offset_lance|itp_merchandise| itp_primary|itp_wooden_parry, itc_staff|itcf_carry_spear, 140 , weight(2.5)|difficulty(0)|spd_rtng(95) | weapon_length(150)|swing_damage(20 , blunt) | thrust_damage(27 ,  pierce),imodbits_polearm ],

Модель "two_handed_battle_long_axe_c" в Файле "weapons_e.brf" :
 Длина модели в "openBrf" ориентировочно - 1.8м.
 Радиус поражения у данной модели в "module_items.py" - 155
["great_long_bardiche", "Great Long Bardiche", [("two_handed_battle_long_axe_c",0)], itp_type_polearm|itp_merchandise| itp_two_handed|itp_primary|itp_bonus_against_shield|itp_wooden_parry|itp_unbalanced, itc_staff, 660 , weight(5.0)|difficulty(12)|spd_rtng(88) | weapon_length(155)|swing_damage(50 , cut) | thrust_damage(17 ,  pierce),imodbits_axe ],

 Радиус поражения у этих моделей в игре
(https://1.downloader.disk.yandex.ru/preview/1ad45822021dffa827535b8f22d684546b3c2bee7c309984fd1680e1dedfc2b3/inf/r4DPqpe6oJ99_pim0Lbc7cLgI4sJ8SI-T52TAPrRSEwb7kUQYo4i7rq194VZYWL_vu8FGWNR94Ub7bfmQJtv8A%3D%3D?uid=251117738&filename=0000016.jpg&disposition=inline&hash=&limit=0&content_type=image%2Fjpeg&tknv=v2&size=903x459)
(https://1.downloader.disk.yandex.ru/preview/b0dcadf1ecbedb98d38fc6d38e33313e327948f24587e2ff631794d3e9e95569/inf/r4DPqpe6oJ99_pim0Lbc7ezBI9suNjBVA2Gwu1N9SU-oTdwwCtA3QO95Ecu54ZfXFJErb-gOpINZ3biQYKfIDg%3D%3D?uid=251117738&filename=0000017.jpg&disposition=inline&hash=&limit=0&content_type=image%2Fjpeg&tknv=v2&size=903x459)
(https://4.downloader.disk.yandex.ru/preview/ff4af49d3546021004bf638d9af6b7a63e23617a2232d53535db3bbffcf58829/inf/r4DPqpe6oJ99_pim0Lbc7XFiZpAQ4u3sbHOKIenZyPRvw9cDuRACvn_-TNE5mi-u5mOFRNI0EMwniO5vloFn4A%3D%3D?uid=251117738&filename=0000018.jpg&disposition=inline&hash=&limit=0&content_type=image%2Fjpeg&tknv=v2&size=903x459)
(https://3.downloader.disk.yandex.ru/preview/f2513c0c0f4594d2389fc54cac694e9fc2a4fb5bf1794465cc5361d5d15101c2/inf/r4DPqpe6oJ99_pim0Lbc7YSz6ztGq0TnP2cO23KzLL9P3mWHznltQqX8WS38siAZgU4Idfcc1eBgFnuNHXKtgA%3D%3D?uid=251117738&filename=0000019.jpg&disposition=inline&hash=&limit=0&content_type=image%2Fjpeg&tknv=v2&size=903x459)
(https://2.downloader.disk.yandex.ru/preview/17ca3e4fe15d5e9a9a0d0b6b2444344bcb2cafce34b50c7bd594d1d8ac269f1f/inf/r4DPqpe6oJ99_pim0Lbc7TyJiPvwmjfYXDriRtvG7Pygkwf6zQgA3UfzZl-3ZUAVBToHIuEYJ7h9FtAy5K70Fw%3D%3D?uid=251117738&filename=0000020.jpg&disposition=inline&hash=&limit=0&content_type=image%2Fjpeg&tknv=v2&size=903x459)
(https://3.downloader.disk.yandex.ru/preview/b4797480026b1654b03193008e5a7241b30ca6fcf628c911d85b2d872cf4524a/inf/r4DPqpe6oJ99_pim0Lbc7bkDfm1a6UYqH28LfEqFiPONsiFCrfX5xeUa33_yhywRHrbYKQlINlYvVAI7xX5HcQ%3D%3D?uid=251117738&filename=0000021.jpg&disposition=inline&hash=&limit=0&content_type=image%2Fjpeg&tknv=v2&size=903x459)


Посмотрев картинки (если найдёте нужным можете сами посмотреть в игре) мы увидим, что визуально длина от кончика spear/bardiche до руки у всех меньше указанных в "weapon_length" оружия.
Визуально несоответствие увеличивается ещё приблизительно на 50 см (0.5м), когда оружие берётся в две руки. По хорошему, когда оружие берётся в две руки, левая рука должна переходить на место правой, а правая должна перехватывать древко ниже.
Таким образом можно сделать вывод, что анимацию  "itc_staff" следует доработать, а большинство копий передвинуть в "openBrf", преведя в соответствие визуальную длину и "weapon_length".   


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


Продолжение следует...