HLFX.Ru Forum Страницы (260): « Первая ... « 251 252 253 254 [255] 256 257 258 259 » ... Последняя »
Показать все 3900 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Нубские вопросы от <censored> и других нубов (https://hlfx.ru/forum/showthread.php?threadid=4535)


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

Цитата:
Crystallize писал:
Там ещё остается какая-то гравитация которая приходит из vecAbsVelocity

Не гравитация, а просто вектор недообнуляется, наверное. Такое вполне может быть. Он же обнуляется не просто с течением времени, а по наступлению некоторого события, например если игрок нащупал дно.

Добавлено 17-01-2024 в 22:17:

Да я же вам рассказывал про забавный баг в первом Квейке. На e1m3 в конце уровня есть такой лифт к выходу с уровня и там игрока подстерегают два демона. Если убить их так, что они останутся на этом подъемнике, то, когда подъемник начнёт опускаться, мёртвые демоны поедут куда-то влево-вправо, ну вообщем кто куда. Почему так происходит? Демоны обычно гибнут в полёте, когда их велосити не равен нулю и падают на землю с актуальным велосити. Но поскольку монстр при падении получает флаг FL_ONGROUND это уже не имеет значения. А вот когда подъемник начинает опускаться вместе с демонами, он им обнуляет флаг FL_ONGROUND и велосити вновь начинает применяться. Вот они и продолжают ехать в ту сторону, куда прыгали перед смертью. Но - строго в 2д плоскости

Добавлено 17-01-2024 в 22:17:

И таких приколов в кушной физике довольно много.

__________________
My Projects: download page

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

Цитата:

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


Отправлено Sigurth 20-01-2024 в 04:16:

Прилипание игрока к полу

Подскажите, как можно убрать "прилипание" игрока к полу по время FlyMove и NoClipMove? Подобный эффект можно наблюдать в режиме спектатора, особенно в кс 1.6, когда в летите прямо, у вас под ногами наклонная поверхность, и вы в итоге летите не прямо, а "скользите" по поверхности вниз. Можете проверить на de_dust2. Но если на режим спектатора мне глубоко начихать, то вот после уменьшения скорости передвижения по лестницам, при малом PITCH игроку не хватает скорости, чтобы отлипнуть от пола и начать подниматься, что меня очень огорчает. Фиксил кто-нибудь такое?

__________________
Никогда не поздно сделать мод под хл1


Отправлено Crystallize 20-01-2024 в 07:25:

Sigurth я такое замечал на ксашмоде в начале 2020 когда игрался с переносом уровней из хл2, но Дядя Миша меня толи не понял, толи не поверил.


Отправлено Aynekko 20-01-2024 в 07:55:

Цитата:
Sigurth писал:
Подскажите, как можно убрать "прилипание" игрока к полу по время FlyMove и NoClipMove?

void PM_CatagorizePosition (void):
C++ Source Code:
1
if( pmove->movetype == MOVETYPE_NOCLIP || pmove->spectator )
2
  point[2] = pmove->origin[2]; // diffusion - no glueing with ground when noclipping or spectating
3
else
4
  point[2] = pmove->origin[2] - 2;

__________________
Мой мод на Xash


Отправлено Дядя Миша 20-01-2024 в 08:49:

Было:

C++ Source Code:
1
// Always try and unstick us unless we are in NOCLIP mode
2
if ( pmove->movetype != MOVETYPE_NOCLIP && pmove->movetype != MOVETYPE_NONE )
3
{
4
  if ( PM_CheckStuck() )
5
  {
6
    return;  // Can't move, we're stuck
7
  }
8
}
9
 
10
// Now that we are "unstuck", see where we are ( waterlevel and type, pmove->onground ).
11
PM_CatagorizePosition();

Стало:
C++ Source Code:
1
// Always try and unstick us unless we are in NOCLIP mode
2
if ( pmove->movetype != MOVETYPE_NOCLIP && pmove->movetype != MOVETYPE_NONE )
3
{
4
  if ( PM_CheckStuck() )
5
  {
6
    return;  // Can't move, we're stuck
7
  }
8
 
9
  // Now that we are "unstuck", see where we are ( waterlevel and type, pmove->onground ).
10
  PM_CatagorizePosition();
11
}

Так сложно догадаться, правда?

Добавлено 20-01-2024 в 11:49:

Собственно вот это говно, которое заставляет игрока "прилипать"
C++ Source Code:
1
// If we are on something...
2
if (pmove->onground != -1)
3
{
4
  // Then we are not in water jump sequence
5
  pmove->waterjumptime = 0;
6
  // If we could make the move, drop us down that 1 pixel
7
  if (pmove->waterlevel < 2 && !tr.startsolid && !tr.allsolid)
8
    VectorCopy (tr.endpos, pmove->origin);
9
}

Но вам вообще не нужен весь этот код в режиме полёта.

Цитата:
Crystallize писал:
но Дядя Миша меня толи не понял, толи не поверил.

Дядя Миша не отвечает на вопросы из разряда, кушоет ли он мёд.

__________________
My Projects: download page

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

Цитата:

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


Отправлено Crystallize 25-01-2024 в 14:49:

я хотел написать Vector c = array[ (byte)(a*b) ]
а написал Vector c = array[ (byte)a*b ]
И у вектора отдельно компонент x запортился. Не выдался неверный элемент, не запортился весь вектор, а только один компонент. Странно.


Отправлено nemyax 25-01-2024 в 23:38:

Цитата:
Crystallize писал:
я хотел написать Vector c = array[ (byte)(a*b) ]

Что оно должно было делать по твоей задумке?


Отправлено Crystallize 26-01-2024 в 01:28:

nemyax Массив с положительными и отрицательными ячейками, чтобы знать какие рельсины впереди а какие позади тебя. Не все, просто пара ближайших. Один множитель это индекс -2 -1 1 2, другой это направление 1 -1 по или против нумерации. Ну а байт это переполнение буфера чтобы -1 стало 255.


Отправлено Дядя Миша 26-01-2024 в 05:46:

Цитата:
Crystallize писал:
Массив с положительными и отрицательными ячейками, чтобы знать какие рельсины впереди а какие позади тебя


Позади тебя очевидно рельсы, которые ты уже проехал. Впереди тебя рельсы, которые ты собираешься проехать.

__________________
My Projects: download page

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

Цитата:

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


Отправлено FiEctro 26-01-2024 в 06:00:

Цитата:
Дядя Миша писал:
if (pmove->onground != -1)


Интересно кстати, почему -1? Он же по идее вообще булевым должен быть.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Crystallize 26-01-2024 в 06:37:

Цитата:
Дядя Миша писал:

Позади тебя очевидно рельсы, которые ты уже проехал. Впереди тебя рельсы, которые ты собираешься проехать.

Да никто не знает что там позади тебя а что впереди. Особенно когда неизвестно с какой стороны ты прилетел и в какую сторону поехал. Есть только сегмент на котором ты сел, чей он таргет, кто его таргет, и переменная с направлением движения. Она и создаёт концепцию "позади тебя", "впереди тебя" и т.д.


Отправлено Дядя Миша 26-01-2024 в 07:05:

Цитата:
FiEctro писал:
Интересно кстати, почему -1? Он же по идее вообще булевым должен быть.

Не, там номер энтити хранится.

Цитата:
Crystallize писал:
Да никто не знает что там позади тебя а что впереди.

Так у тебя же там двусвязный список из патч-треков.

__________________
My Projects: download page

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

Цитата:

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


Отправлено FiEctro 26-01-2024 в 07:55:

Цитата:
Дядя Миша писал:
Не, там номер энтити хранится.


Там же написано on ground. Зачем в onground хранить номер энтитии? Да ещё и так хардкодить его ?

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Crystallize 26-01-2024 в 08:32:

Цитата:
Дядя Миша писал:
Так у тебя же там двусвязный список из патч-треков.

Так он субъективен для самой рельсы. Если ты на него посмотришь не с той стороны, то для тебя он инвертирован.

Добавлено 26-01-2024 в 15:32:

Цитата:
FiEctro писал:
Там же написано on ground. Зачем в onground хранить номер энтитии? Да ещё и так хардкодить его ?

Наверное потому что энтити бывают брашевыми и при этом солидными.


Отправлено nemyax 26-01-2024 в 09:43:

Цитата:
Crystallize писал:
Есть только сегмент на котором ты сел, чей он таргет, кто его таргет, и переменная с направлением движения.

Тогда зачем ещё и массив строить? Всё ж и так есть.


Временная зона GMT. Текущее время 18:19. Страницы (260): « Первая ... « 251 252 253 254 [255] 256 257 258 259 » ... Последняя »
Показать все 3900 сообщений этой темы на одной странице

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