HLFX.Ru Forum Страницы (11): « Первая ... « 4 5 6 7 [8] 9 10 11 »
Показать все 160 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Лажа со стрейфами (https://hlfx.ru/forum/showthread.php?threadid=3495)


Отправлено Дядя Миша 23-01-2014 в 16:20:

Цитата:
Ku2zoff писал:
Я кстати разобрался, почему хитбоксы на сервере не совпадали с клиентскими и уже это поправил.

Питч инвертировал?
Цитата:
Ku2zoff писал:
Под ксашем наоборот, но началось это после того, как ты поменял аргументы местами в движке

Я поменял, потому что мне один товарищ все ухи прожужжал - поменяй, да поменяй. То есть обманул, получается?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено marikcool 23-01-2014 в 16:50:

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

__________________
vk.com/skullcapstudios


Отправлено Ku2zoff 23-01-2014 в 16:55:

Цитата:
Дядя Миша писал:
Питч инвертировал?

Всё гораздо проще. В клиентском коде с форума арранжевого мента сделано так: сначала берётся значение curstate.angles[PITCH] у текущей энтити, на основе его меняется curstate.blending[1], а потом curstate.angles[PITCH] делается равным нулю. На выходе имеем что моделька игрока не наклоняется вперёд/назад как в халфе (ноги игрока остаются на земле, спина перпендикулярна полу) и меняются только бленды на основе значения curstate.blending[1]. Ну я взял и сделал обнуление питча на сервере. И моделька (серверная, которую не видно) перестала наклоняться, хитбоксы почти совпадают, есть кое-какие несходжения, но по сравнению с тем, что было раньше - пустяк.
Цитата:
Дядя Миша писал:
То есть обманул, получается?

Видимо да. С помощью эдикта я прекрасно получаю из КБейсПлеера yaw и pitch для смены блендов. Аргументы стоят как у Валвэ.

Добавлено 23-01-2014 в 23:55:

Цитата:
marikcool писал:
Углы помоему v_angles юзаются с бейсплеера а не angles с эдикта.

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


Отправлено Ku2zoff 30-04-2014 в 17:11:

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


Отправлено ILZM 30-04-2014 в 17:26:

Ku2zoff, а как увидеть хитбоксы и проверять?


Отправлено tolerance 30-04-2014 в 18:40:

Цитата:
ILZM писал:
Ku2zoff, а как увидеть хитбоксы и проверять?

Может r_drawentities 2 или 3 (sv_cheats надо).


Отправлено Ku2zoff 30-04-2014 в 18:45:

Цитата:
ILZM писал:
а как увидеть хитбоксы и проверять?

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


Отправлено ~ X ~ 30-04-2014 в 18:46:

Это ж только клиентские. По серверным только лучами стрелять

Интересная темка, как-то я этим тоже заморачивался. Ещё взбесило отражение оси поворота PITCH... Халва-говно, вобщем. Если что придумаете, готов проверить/дополнить, но только летом.

__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]


Отправлено Ku2zoff 30-04-2014 в 18:55:

Цитата:
~ X ~ писал:
Если что придумаете

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


Отправлено Дядя Миша 30-04-2014 в 19:04:

Цитата:
Ku2zoff писал:
Никак, нету встроенного механизма для сервера

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Ku2zoff 01-05-2014 в 01:16:

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


Отправлено KiQ 01-05-2014 в 08:07:

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

__________________
-Brain is dead-


Отправлено Ku2zoff 01-05-2014 в 08:12:

KiQ кинь тогда настройки, пригодятся. Хотя, боюсь, что ксаш не прожуёт дллки от нового хлсдк.


Отправлено Дядя Миша 01-05-2014 в 11:19:

Цитата:
Ku2zoff писал:
Хотя, боюсь, что ксаш не прожуёт дллки от нового хлсдк.

зря я что ли интерфейсы апдейтил?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ILZM 01-05-2014 в 14:42:

Как это код одинаковый, но модель ведёт себя по-другому и поворачивается не одинаково?


Временная зона GMT. Текущее время 16:49. Страницы (11): « Первая ... « 4 5 6 7 [8] 9 10 11 »
Показать все 160 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024