HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Теория и практика > Half-Life SDK > Лажа со стрейфами
Подскажите пожалуйста, как подправить
Страницы (11): « Первая ... « 5 6 7 8 [9] 10 11 »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
Ku2zoff
Мастер Ёда из Деревни Дуракоф

Дата регистрации: Apr 2007
Проживает: В Деревне дураков
Сообщений: 6749
Возраст: 33

Рейтинг



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

Да вот так. Код выполняет одни и те же функции, но он не одинаковый. На клиенте в коде студиомодельрендерера есть доступ к разным параметрам энтити и инфе игрока, всё обновляется оперативно, каждый кадр. На сервере часть параметров из движка получить невозможно, насколько я увидел по коду из исходников КС. Например, тот же gaitmovement вычисляется непосредственно в коде игрока. Gaityaw тоже надо считать самому. Ну и ещё кое-что по мелочи. Попробую написать свои механизмы вычисления, основываясь на клиентском коде. Как только доведу до ума и протестирую, сделаю полноценный тутор с объяснениями.

Добавлено 02-05-2014 в 11:15:

А надо ли это кому?

Сообщить модератору | | IP: Записан
Сообщение: 137143

Старое сообщение 02-05-2014 04:15
- За что?
ILZM
LAW

Дата регистрации: Oct 2011
Проживает: Mega City One
Сообщений: 301

Рейтинг



Ku2zoff, например, мне)

Сообщить модератору | | IP: Записан
Сообщение: 137145

Старое сообщение 02-05-2014 06:06
- За что?
~ X ~
offline

Дата регистрации: Oct 2005
Проживает: Архангельск
Сообщений: 3619

Рейтинг



Награды
 
[1 награда]


Цитата:
Ku2zoff писал:
когда стоит (когда gaitmovement равен нулю)

не обязательно, у меня, вроде, для idle gaitsequence == sequence.

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

Сообщить модератору | | IP: Записан
Сообщение: 137149

Старое сообщение 02-05-2014 08:28
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32237
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
Ku2zoff писал:
На сервере часть параметров из движка получить невозможно, насколько я увидел по коду из исходников КС

У тебя доступ к эдикту есть. А значит и к классу доступ тоже.
Цитата:
Ku2zoff писал:
Например, тот же gaitmovement вычисляется непосредственно в коде игрока. Gaityaw тоже надо считать самому

гейт не от хорошей жизни, это потому что велосити на клиент не приходит.
А на сервере считать гейт не надо.
Достаточно сделать вот так:
C++ Source Code:
est_velocity = pplayer->velocity;
m_flGaitMovement = est_velocity.Length() * dt;

вообще у меня сложилось впечатление, что вы все годами не можете сделать то, что вообщем-то требует от силы полтора часа.
Позорища
И марик этот со своей дезинформацией. Пусть сначале идой научится пользоваться.

Добавлено 02-05-2014 в 14:12:

Цитата:
Ku2zoff писал:
Попробую написать свои механизмы вычисления, основываясь на клиентском коде

Ну вон в ксаше mod_studio.c - полноценная имплементация, бери да суй на сервер. Что мешает?
Заметь, 100% рабочая, иначе бы давно уже завалили багрепортами.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 137154

Старое сообщение 02-05-2014 10:12
-
~ X ~
offline

Дата регистрации: Oct 2005
Проживает: Архангельск
Сообщений: 3619

Рейтинг



Награды
 
[1 награда]


Цитата:
Дядя Миша писал:
А на сервере считать гейт не надо.

лолшто? gaitsequence?
я немного потерял нить, о чём вы говорите. От уклона перешли к гайтам. Вообще, имхо, код передвижения в халве - КГ. В скайриме сделано единственно правильно (выставление ног на неровные поверхности). Но это для хохлолвы слишком круто... Хотя, я об этом ещё году в 2004ом думал...

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

Сообщить модератору | | IP: Записан
Сообщение: 137155

Старое сообщение 02-05-2014 10:21
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32237
Нанёс повреждений: 392 ед.

Рейтинг



ЗЫ, на сервере гейт считать вообще не надо. Халфа его не считает, он не нужен.

Добавлено 02-05-2014 в 14:23:

Цитата:
~ X ~ писал:
В скайриме сделано единственно правильно (выставление ног на неровные поверхности).

Это называется "инверсная кинематика". Запиши в блокнотек, чтобы не забыть.
Цитата:
~ X ~ писал:
Но это для хохлолвы слишком круто...

Можно сделать. Надо только немного дополнить формат mdl.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 137157

Старое сообщение 02-05-2014 10:23
-
ILZM
LAW

Дата регистрации: Oct 2011
Проживает: Mega City One
Сообщений: 301

Рейтинг



Дядя Миша, объясните сам принцип ИК. Это типа трассировка с ноги на поверхность идёт?

Сообщить модератору | | IP: Записан
Сообщение: 137165

Старое сообщение 02-05-2014 10:41
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32237
Нанёс повреждений: 392 ед.

Рейтинг



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

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 137167

Старое сообщение 02-05-2014 10:51
-
Ku2zoff
Мастер Ёда из Деревни Дуракоф

Дата регистрации: Apr 2007
Проживает: В Деревне дураков
Сообщений: 6749
Возраст: 33

Рейтинг



Цитата:
Дядя Миша писал:
Ну вон в ксаше mod_studio.c - полноценная имплементация, бери да суй на сервер. Что мешает?

Всё что надо, я оттуда уже взял. Проблему я описал выше: Клиентская модель уже повернулась, а серверная ещё нет, она как бы "догоняет" рывками каждые N градусов, если игрок не движется. Может даже "перегнать", если мышью шевелить резко. Ну и гадские наклоны по оси Pitch, которые можно заблокировать в коде SV_StudioSetupBones.

Отредактировано Ku2zoff 02-05-2014 в 17:45

Сообщить модератору | | IP: Записан
Сообщение: 137171

Старое сообщение 02-05-2014 17:26
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32237
Нанёс повреждений: 392 ед.

Рейтинг



Хех. Ну как ты узнаешь, что серверная модель "догоняет" ?
Ты ведь не можешь её увидеть.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 137172

Старое сообщение 02-05-2014 17:45
-
Ku2zoff
Мастер Ёда из Деревни Дуракоф

Дата регистрации: Apr 2007
Проживает: В Деревне дураков
Сообщений: 6749
Возраст: 33

Рейтинг



Цитата:
Дядя Миша писал:
Ты ведь не можешь её увидеть.

А я pitch и yaw (которые вычисляются на сервере и юзаются в SV_StudioSetupBones) отправил на клиент, и там подхватил в клиентском StudioSetupBones. Вот и увидел. А про наклоны по picth - в модифицированной для 9-way блендинга функции StudioPlayerBlend эти наклоны обнуляются, моделька не наклоняется. На сервере тоже так сделал - хитбоксы почти стали совпадать, осталось несхождение из-за "догонялок".

Сообщить модератору | | IP: Записан
Сообщение: 137173

Старое сообщение 02-05-2014 17:51
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32237
Нанёс повреждений: 392 ед.

Рейтинг



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

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 137174

Старое сообщение 02-05-2014 17:57
-
Ku2zoff
Мастер Ёда из Деревни Дуракоф

Дата регистрации: Apr 2007
Проживает: В Деревне дураков
Сообщений: 6749
Возраст: 33

Рейтинг



Я видео если что залью потом. Это наверное не рассинхрон, а что-то другое. Рассинхрон он по времени, а тут можно хоть полдня прождать, моделька не повернётся, пока не сдвинешь игрока с места, или пока не повернёшь мышью дальше.

Сообщить модератору | | IP: Записан
Сообщение: 137175

Старое сообщение 02-05-2014 18:09
- За что?
Ku2zoff
Мастер Ёда из Деревни Дуракоф

Дата регистрации: Apr 2007
Проживает: В Деревне дураков
Сообщений: 6749
Возраст: 33

Рейтинг



Разобрался, почему модель опаздывает. Запустил кс в одиночном режиме, сделал вид от 3-го лица. Там модель тоже поворачивается с опозданием. Значит, серверный код это действительно предусматривает. Надо либо заставить модель вертеться вовремя, либо завтавить модель на клиенте опаздывать.

Добавлено 03-05-2014 в 18:25:

Эх нет. Опаздывает только тогда, когда у игрока нет оружия. Стоит взять ствол, параметр sequence меняется, и всё норм.

Сообщить модератору | | IP: Записан
Сообщение: 137194

Старое сообщение 03-05-2014 11:25
- За что?
~ X ~
offline

Дата регистрации: Oct 2005
Проживает: Архангельск
Сообщений: 3619

Рейтинг



Награды
 
[1 награда]


У меня голова кружится... Так что, галактика уже не опасносте? А то я чуть не ринулся спасать XDM от багов поворота модели!

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

Сообщить модератору | | IP: Записан
Сообщение: 137229

Старое сообщение 03-05-2014 18:37
- За что?
Тема: (Опционально)
Ваш ответ:



Переводчик транслита


[проверить длину сообщения]
Опции: Автоматическое формирование ссылок: автоматически добавлять [url] и [/url] вокруг интернет адресов.
Уведомление по E-Mail: отправить вам уведомление, если кто-то ответил в тему (только для зарегистрированных пользователей).
Отключить смайлики в сообщении: не преобразовывать текстовые смайлики в картинки.
Показать подпись: добавить вашу подпись в конец сообщения (только зарегистрированные пользователи могут иметь подписи).

Временная зона GMT. Текущее время 16:07. Новая тема    Ответить
Страницы (11): « Первая ... « 5 6 7 8 [9] 10 11 »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Теория и практика > Half-Life SDK > Лажа со стрейфами
Подскажите пожалуйста, как подправить
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

Быстрый переход:
Оцените эту тему:

Правила Форума:
Вы not можете создавать новые темы
Вы not можете отвечать в темы
Вы not можете прикреплять вложения
Вы not можете редактировать ваши сообщения
HTML Код ВЫКЛ
vB Код ВКЛ
Смайлики ВКЛ
[IMG] Код ВКЛ
 

< Обратная связь - HLFX.ru >

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