HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > XashXT > XashXT/3D [Вопросы и ответы] 2 голосов
Страницы (47): « Первая ... « 39 40 41 42 [43] 44 45 46 47 »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
 Дядя Миша
who said meow?

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

Рейтинг



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

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

__________________
My Projects: download page

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

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

Старое сообщение 08-08-2021 18:18
-
KorteZZ
Lambda

Дата регистрации: Oct 2009
Проживает: Mongolia
Сообщений: 261
Возраст: 33

Рейтинг



А если противник играет за монстра, у которого голова между ног?

__________________

Killing Floor: Horzine Outbreak

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

Старое сообщение 09-08-2021 05:18
- За что?
 Дядя Миша
who said meow?

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

Рейтинг



В халфе референс хитбоксов ВСЕГДА берётся с player.mdl
чтобы не читерили. В ку3 действительно был такой перс, но я не помню как ему урон наносился.

__________________
My Projects: download page

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

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

Старое сообщение 09-08-2021 06:48
-
KorteZZ
Lambda

Дата регистрации: Oct 2009
Проживает: Mongolia
Сообщений: 261
Возраст: 33

Рейтинг



А в Natural Selection как?

__________________

Killing Floor: Horzine Outbreak

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

Старое сообщение 09-08-2021 19:29
- За что?
Ku2zoff
Юзер (типа моддер)

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

Рейтинг



KorteZZ хитбоксы берутся от модели, которая задаётся в CBasePlayer::Spawn. Для каждого класса устанавливается своя "референсная" модель с правильными хитбоксами. Допустим, есть выбор по pev->playerclass. Для каждого плейеркласса будет своя "референсная" модель с набором правильных хитбокссов, и, что не менее важно, анимаций.

Отредактировано Ku2zoff 09-08-2021 в 19:42

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

Старое сообщение 09-08-2021 19:39
- За что?
KorteZZ
Lambda

Дата регистрации: Oct 2009
Проживает: Mongolia
Сообщений: 261
Возраст: 33

Рейтинг



Ku2zoff Ого! Спасибо!
Вот за что тебя люблю, так это за то, что ты прямо отвечаешь на вопрос, без нравоучений и выпендрежа

__________________

Killing Floor: Horzine Outbreak

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

Старое сообщение 10-08-2021 02:57
- За что?
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 601
Возраст: 29

Рейтинг



Цитата:
Aynekko писал:
Почему такое происходит? Я только примерно понял где копать. Дальше не пойму. Тут сначала рендерер 1, потом 0.
https://www.youtube.com/watch?v=XDULytVRbY8

Цитата:
Дядя Миша писал:
Сравнивайте с параноей в спорных моментах.

Посмотрел я параною от третьего лица. Там все то же самое, что и на видео. Так что копировать из паранои смысла нет. Все так же сломано.

__________________
Мой мод на Xash

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

Старое сообщение 10-08-2021 07:53
- За что?
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 601
Возраст: 29

Рейтинг



Копался несколько дней, обнаружил такое (да-да, я все насчет гейтсиквенсов). Вот лог (сервер смотрит на клиента):

C++ Source Code:
1
[2021:08:13|00:25:55] ind 1 tr.time 39.094936 curanimtime 39.090759 prevanimtime 39.074093 dadt 0.041771
2
[2021:08:13|00:25:55] ind 1 tr.time 39.099102 curanimtime 39.090759 prevanimtime 39.074093 dadt 0.083427
3
[2021:08:13|00:25:55] ind 1 tr.time 39.103271 curanimtime 39.090759 prevanimtime 39.074093 dadt 0.125122
4
[2021:08:13|00:25:55] ind 1 tr.time 39.107437 curanimtime 39.107437 prevanimtime 39.090759 dadt 0.000000
5
[2021:08:13|00:25:55] ind 1 tr.time 39.111607 curanimtime 39.107437 prevanimtime 39.090759 dadt 0.041695
6
[2021:08:13|00:25:55] ind 1 tr.time 39.115772 curanimtime 39.107437 prevanimtime 39.090759 dadt 0.083351
7
[2021:08:13|00:25:55] ind 1 tr.time 39.119938 curanimtime 39.107437 prevanimtime 39.090759 dadt 0.125008
8
[2021:08:13|00:25:55] ind 1 tr.time 39.124107 curanimtime 39.107437 prevanimtime 39.090759 dadt 0.166702
9
[2021:08:13|00:25:55] ind 1 tr.time 39.128277 curanimtime 39.128277 prevanimtime 39.107437 dadt 0.000000
10
[2021:08:13|00:25:55] ind 1 tr.time 39.132446 curanimtime 39.128277 prevanimtime 39.107437 dadt 0.041695
11
[2021:08:13|00:25:55] ind 1 tr.time 39.136612 curanimtime 39.128277 prevanimtime 39.107437 dadt 0.083351
12
[2021:08:13|00:25:55] ind 1 tr.time 39.140781 curanimtime 39.128277 prevanimtime 39.107437 dadt 0.125046
13
[2021:08:13|00:25:55] ind 1 tr.time 39.144947 curanimtime 39.144947 prevanimtime 39.128277 dadt 0.000000
14
[2021:08:13|00:25:55] ind 1 tr.time 39.149117 curanimtime 39.144947 prevanimtime 39.128277 dadt 0.041695

Проверку выводил здесь:
C++ Source Code:
1
float CStudioModelRenderer::StudioEstimateInterpolant(void)
2
{
3
  float dadt = 1.0;
4
 
5
  if (m_fDoInterp && (m_pCurrentEntity->curstate.animtime >= m_pCurrentEntity->latched.prevanimtime + 0.01f))
6
  {
7
    dadt = (tr.time - m_pCurrentEntity->curstate.animtime) / 0.1f;
8
 
9
    if (dadt > 2.0f)
10
      dadt = 2.0f;
11
  }
12
  if (m_pPlayerInfo)
13
  {
14
    gEngfuncs.Con_Printf("ind %i tr.time %f curanimtime %f prevanimtime %f dadt %f\n", m_nPlayerIndex, tr.time, m_pCurrentEntity->curstate.animtime, m_pCurrentEntity->latched.prevanimtime, dadt);
15
  }
16
 
17
  return dadt;
18
}

Что-то мне подсказывает, что dadt должен быть в районе 1 или больше. Когда клиент смотрит на сервера, dadt держится примерно в тех же значениях, но иногда заходит в минус, т.к. tr.time < animtime игрока-сервера. Беда.

А дерганье влево-вправо при стрельбе - это делает AddBlendSequence. Если поставить dadt = 1 принудительно и отключить AddBlendSequence (только для игрока, разумеется) - при виде от третьего лица все идеально и никаких дерганий. Впрочем, в мультиплеере ничего не решается.

__________________
Мой мод на Xash

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

Старое сообщение 12-08-2021 21:34
- За что?
 Дядя Миша
who said meow?

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

Рейтинг



dadt это интерполяционное значение, оно должно меняться от 0 до 1.

__________________
My Projects: download page

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

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

Старое сообщение 13-08-2021 05:38
-
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 601
Возраст: 29

Рейтинг



Подскажите, можно ли включить тени на фонарике от обычных брашей? Есть тени только от моделей и брашевых энтитей, а в параное - от всего. Но мне бы в ксашмоде.

__________________
Мой мод на Xash

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

Старое сообщение 23-08-2021 14:17
- За что?
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 601
Возраст: 29

Рейтинг



С тенями от брашей разобрался (починил!!!). Теперь пытаюсь разобраться со скейлом моделей (их освещения фонариком). Пробовал кучу хаков, посылая шейдеру данные о радиусе моделей, их скейл… Чего-то внятного не вышло, хоть и лучше стало.

В параное я нашел единственное (вроде как) отличие
uniform vec4 u_BonesArray[MAXSTUDIOBONES*3];
Это я скопипастил и вроде как оно приходит в шейдер. Отправляю из CStudioModelRenderer::DrawLightForMeshList

C++ Source Code:
pglUniform4fvARB(RI->currentshader->u_BonesArray, num_bones * 3, &m_pModelInstance->m_glstudiobones[0][0]);


В шейдере bonematrix считаю уже не через Mat4FromOriginQuat, а через "Mat4FromVec4Array( 0, 1.0 );"
На выходе правда получил моргающие модели, где темная модель Z-файтит со светлой. Стал копать дальше, пока сверялся с параноевскими шейдерами, наткнулся на
C++ Source Code:
var_ViewVec = ( u_ViewOrigin.xyz - worldpos.xyz );

Я не пойму откуда он берется. В исходниках паранои вообще нет упоминаний, в шейдерах только 2 упоминания - строчка выше и вот еще одна:
C++ Source Code:
vec3 V = normalize( var_ViewVec );

Или он просто локальный? Впрочем, добавив его, модели вообще перестали освещаться… Этот фонарик меня уже с ума сводит.

P.S. да, я снова копаюсь в коде, т.к. после релиза первой главы решил сменить деятельность, а то маппинг пока в печенках сидит. Думал, может фонарик-таки смогу починить. Можно конечно наплодить моделей со скейлом 1, но это же кошмар какой-то…

__________________
Мой мод на Xash

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

Старое сообщение 02-09-2021 20:51
- За что?
 Дядя Миша
who said meow?

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

Рейтинг



А что в параное, фонарик тоже неправильно освещает скейленные модели?

Добавлено 03-09-2021 в 09:35:

Цитата:
Aynekko писал:
Я не пойму откуда он берется.

вот из этой строчки и берётся.

__________________
My Projects: download page

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

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

Старое сообщение 03-09-2021 06:35
-
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 601
Возраст: 29

Рейтинг



Цитата:
Дядя Миша писал:
А что в параное, фонарик тоже неправильно освещает скейленные модели?

Там как раз все правильно, поэтому сверяюсь и пытаюсь найти, чего не хватает. Всякие строчки типа normal map я не учитываю.

Ясно, значит локальный все-таки. Я глянул, он вроде как нужен только нормалмапе...
Полагаю дело именно в bonematrix, которую надо умножить на что-то (скейл модели?). Еще там был какой-то computetbn, он вроде бы тоже ксашмоду не нужен. Я в шейдер studiodlight уже принес скейл модели, может как-то его можно использовать? Пробовал bonematrix и даже position умножать на него, вышло так себе) и ведь что самое интересное, тень от моделей ложится правильно. Она учитывает скейл. А сам свет нет.

Если кому интересно что за баг
https://youtu.be/D61zjtAgE-0
Две модели с виду одинаковые, но скейл 1 и 0.5 у них.

__________________
Мой мод на Xash

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

Старое сообщение 03-09-2021 08:25
- За что?
 Дядя Миша
who said meow?

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

Рейтинг



Цитата:
Aynekko писал:
и ведь что самое интересное, тень от моделей ложится правильно

там отдельный шейдер используется

__________________
My Projects: download page

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

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

Старое сообщение 03-09-2021 08:37
-
Crystallize
Бета-тестер XashNT

Дата регистрации: Jul 2007
Проживает: Новосибирск
Сообщений: 3571
Возраст: 32

Рейтинг



Цитата:
Aynekko писал:
Две модели с виду одинаковые, но скейл 1 и 0.5 у них.

По-моему они обе неправильно освещаются)) та что справа, как будто сбоку из-за другого вагончика ещё кто-то светит.

__________________
Вас приветствует персональная защитная система "САХАРА". Для работы в Средах Агрессивного ХАРАктера.
nofunallowed щас инди это по сути синоним "экзотическая игра где будет сказка и грустно
Alger Foreide Sonic is a collective effort purely based on appeal

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

Старое сообщение 03-09-2021 10:35
- За что?
Тема: (Опционально)
Ваш ответ:



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


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

Временная зона GMT. Текущее время 18:08. Новая тема    Ответить
Страницы (47): « Первая ... « 39 40 41 42 [43] 44 45 46 47 »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > XashXT > XashXT/3D [Вопросы и ответы] 2 голосов
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

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

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

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

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