HLFX.Ru Forum Страницы (3): [1] 2 3 »
Показать все 39 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Технические вопросы (https://hlfx.ru/forum/forumdisplay.php?forumid=20)
-- Проблемы pitch игроков на клиенте (https://hlfx.ru/forum/showthread.php?threadid=4921)


Отправлено ~ X ~ 31-12-2016 в 09:18:

Half-Life Проблемы pitch игроков на клиенте

Подскажите, как её решить.

Детально:

Я научился передавать angles.x с сервера на клиент в почти незабагованном виде. Но осталась такая проблема: модели игроков наклоняются не в ту сторону, блендинги рисуются не в ту сторону.
Хуже всего то, что я, подобрав коэффициенты, привожу все эти вещи в порядок, но... после следующего запуска всё летит в тар-тарары. Как будто движок рандомно умножает углы на -1 или хз вообще на что. О чём идёт речь:

http://pix.academ.info/img/2016/12/31/884becfcd89b620903eeeeb4eda3a373.jpg
Чего я не могу понять - это нахрена заведено столько углов (enity->angles, curstate.angles и т.п.), и откуда, куда и как существуют? На скринах, собственно, я всё описал.
http://pix.academ.info/img/2016/12/31/98f155031f728f6a33cb0b60a64d1270.jpg
От наличия оружия в руке зависит выполнение различного рекурсивного мерзокода халвы.
http://pix.academ.info/img/2016/12/31/d297c182f4773a176c6ae9c69ea4bccc.jpg

Откуда циферки:

C++ Source Code:
1
void CL_DLLEXPORT HUD_ProcessPlayerState(struct entity_state_s *dst, const struct entity_state_s *src)
2
{
3
  if (dst->number == pLocalPlayer->index)
4
    gEngfuncs.Con_NPrintf(7, "ProcessPlayerState() pitch: %f -> %f", src->angles[PITCH], dst->angles[PITCH]);
5
  ...
6
}
7
 
8
// Насколько я понимаю, всё берётся отсюда:
9
void CL_DLLEXPORT HUD_TxferPredictionData(struct entity_state_s *ps, const struct entity_state_s *pps, struct clientdata_s *pcd, const struct clientdata_s *ppcd, struct weapon_data_s *wd, const struct weapon_data_s *pwd)
10
{
11
  gEngfuncs.Con_NPrintf(8, "TxferPredictionData() pitch: %f -> %f", ps->angles[PITCH], pps->angles[PITCH]);
12
  ...
13
}
14
 
15
int CStudioModelRenderer::StudioDrawPlayer(int flags, entity_state_t *pplayer)
16
{
17
  if (gHUD.m_pLocalPlayer && pplayer->number == gHUD.m_pLocalPlayer->index)
18
    gEngfuncs.Con_NPrintf(11, "DrawPlayer() pitch: %f", m_pCurrentEntity->angles[PITCH]);
19
  ...
20
}
21
 
22
// и так далее, имена функций на скринах




Вопрос: каким ВСЁ-ТАКИ должен быть питч если смотришь вниз - 90 или -90!?

Из-за этого дерьма в xdm нет огнемёта и боты смотрят в разные стороны (а как я их отлажу, если я не знаю, правильно ли они рисуются вообще?)

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


Отправлено XaeroX 31-12-2016 в 09:44:

Цитата:
~ X ~ писал:
каким ВСЁ-ТАКИ должен быть питч если смотришь вниз - 90 или -90!?

Это зависит от того, как ты строишь матрицу трансформации.
Ну инвертируй питч там, где требуется, в чём проблема? В студиорендере так сделано, например, в StudioPlayerBlend.

__________________

xaerox on Vivino


Отправлено ~ X ~ 31-12-2016 в 09:52:

Цитата:
XaeroX писал:
Ну инвертируй питч там, где требуется, в чём проблема?


Цитата:
~ X ~ писал:
Хуже всего то, что я, подобрав коэффициенты, привожу все эти вещи в порядок, но... после следующего запуска всё летит в тар-тарары.


и ещё погляди на цифры внимательно. Там не везде даже единицы совпадают.

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


Отправлено XaeroX 31-12-2016 в 10:03:

Цитата:
~ X ~ писал:
и ещё погляди на цифры внимательно

лучше ты погляди сорцы движка внимательно, где и на что он умножает.

__________________

xaerox on Vivino


Отправлено ~ X ~ 31-12-2016 в 10:17:

XaeroX ничего что движок закрытый?

Скрытый текст:
Этот текст скрытый. Вы должны оставить хотя бы одно сообщение в теме, чтобы его увидеть.

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


Отправлено XaeroX 31-12-2016 в 10:30:

Цитата:
~ X ~ писал:
ничего что движок закрытый?

Хватит придуриваться, а? Ты прекрасно знаешь, о каком движке я говорю.

__________________

xaerox on Vivino


Отправлено ~ X ~ 31-12-2016 в 10:38:

XaeroX Хватит придуриваться, а? Я вопрос задал, а не просил меня в чужие движки тыкать. Если ты про Ксаш, то это не ХЛ. ДМ сам говорил, что там всё по-другому и пофикшено. Если не знаешь - так и скажи.

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


Отправлено nemyax 31-12-2016 в 10:41:

Цитата:
~ X ~ писал:
ДМ сам говорил, что там всё по-другому и пофикшено.

Там пофикшено то, что он называет Stupid Quake Bug. Пич с ним вроде связан.


Отправлено XaeroX 31-12-2016 в 11:37:

Цитата:
~ X ~ писал:
Я вопрос задал, а не просил меня в чужие движки тыкать.

Ну хорошо. Тогда мой ответ - "я не знаю".

__________________

xaerox on Vivino


Отправлено ~ X ~ 31-12-2016 в 12:20:

грустнота.
nemyax в том числе.

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


Отправлено Crystallize 31-12-2016 в 14:13:

при маппинге -90
UTIL_MakeVectors же


Отправлено ~ X ~ 31-12-2016 в 16:31:

Crystallize мистическим образом в XDM нет ни SQB, ни UTIL_MakeVectors(), вопрос о движке.

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


Отправлено ~ X ~ 04-01-2017 в 16:08:

UPDATE: почему-то оказалось, что углы на коиенте надо умножать не на 3, а на 9. Вообще угар какой-то. В каких-то функциях оно работает для себя, в каких-то для других, иногда - для всех... Сумасшествие продолжается. Кстати, если исправить единицы измерения, блендинги и поворот модели начинают смотреться очень красиво!

ВАЛЬВА, ТЕБЕ ДОЛЖНО БЫТЬ СТЫДНО!!
ну, немножко.
а вот
КАРМАК, ТЫ КУСОК ГОВНА! Я знаю, что ты читаешь этот форум и смеёшься над нами!

Скрытый текст:
Этот текст скрытый. Вы должны оставить хотя бы одно сообщение в теме, чтобы его увидеть.

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


Отправлено XaeroX 04-01-2017 в 16:12:

Цитата:
~ X ~ писал:
КАРМАК, ТЫ КУСОК ГОВНА!

Ещё раз такое напишешь - улетишь в бан.
Я не шучу. В интернете за поганым языком можно следить меньше, чем IRL, но всему же есть предел.

__________________

xaerox on Vivino


Отправлено GioHAUS0n 04-01-2017 в 16:44:

Цитата:
~ X ~ писал:
UPDATE: почему-то оказалось, что углы на коиенте надо умножать не на 3, а на 9. Вообще угар какой-то. В каких-то функциях оно работает для себя, в каких-то для других, иногда - для всех... Сумасшествие продолжается. Кстати, если исправить единицы измерения, блендинги и поворот модели начинают смотреться очень красиво!

ВАЛЬВА, ТЕБЕ ДОЛЖНО БЫТЬ СТЫДНО!!
ну, немножко.
а вот
КАРМАК, ТЫ КУСОК ГОВНА! Я знаю, что ты читаешь этот форум и смеёшься над нами!
(Скрытый текст)


Вообще-то он не знает об этом форуме (ну кроме Zenimax Media). Могу дать ссылку на твой пост (с переводом стиле Гоблина, чтобы точно понял твой контекст). Пилить движок - это искусство на котором потребуется уйма времени, нервов, сноровок и экспериментов (методом проб и ошибок) (методом "научного" тыка).

Мало кто думал, что ребята id Software работали на мощных компах для создании игр на более слабых железах. Как бы они понимали, где правильно тратить ресурсы системы (на заметку - раньше OS были однозадачными).

Жаль, что такого опыта нету на современных играх, разрабатываются лишь одинаковых требованиях, и разрабы, и игроки.


Временная зона GMT. Текущее время 13:10. Страницы (3): [1] 2 3 »
Показать все 39 сообщений этой темы на одной странице

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