HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Теория и практика > Half-Life SDK > Нубские вопросы от <censored> и других нубов
Чтобы не создавать сто тем
7 голосов
Страницы (260): « Первая ... « 153 154 155 156 [157] 158 159 160 161 » ... Последняя »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
 Дядя Миша
racing for fish

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

Рейтинг



Цитата:
ncuxonaT писал:
не стоит так делать. Смотри раздел "Обновления с переменным шагом времени"

не знаю как вы, а мы под дельтой всю жизнь разумели frametime.
Естественно он каждый кадр вычисляется заново.

Добавлено 01-06-2020 в 17:53:

Цитата:
Aynekko писал:
Как в player.cpp отключить игроку возможность нажатия на кнопку при определенном условии?

может тебе keycatcher нужен?

__________________
My Projects: download page

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

Цитата:

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

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

Старое сообщение 01-06-2020 14:53
-
Crystallize
Житель форума

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

Рейтинг



ncuxonaT я думал что в движках кваки и хл это уже вписано, разве не так?
Кстати в хл же вроде кто-то там тикает на 20фпс, но при этом используется фреймтайм. Интересно, что есть что.

Я прочитал тот абзац, но моего понимания не хватает.

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

Старое сообщение 01-06-2020 14:54
- За что?
Aynekko
Маппер

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

Рейтинг



Цитата:
Дядя Миша писал:
может тебе keycatcher нужен?

Энтитя что ли на карте? Нет, я хочу в стамину, которая для спринта, добавить прыжок (собственно, я его уже добавил и все работает). Единственная недоделка, которая осталась - при значении стамины ниже определенного запретить прыжок.
Уже перепробовал кучу условий вроде посылания команды -jump и "если m_afButtonPressed & IN_JUMP то m_afButtonPressed = 0", но не хотит.

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

Старое сообщение 01-06-2020 14:59
- За что?
ncuxonaT
каков стол, таков и стул

Группа: Опытный
Дата регистрации: Oct 2009
Проживает: город/село/деревня
Сообщений: 1626
Возраст: 33

Рейтинг



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

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

Старое сообщение 01-06-2020 17:04
- За что?
Crystallize
Житель форума

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

Рейтинг



ncuxonaT т.е. всё сводится к какому-то голому теоретизированию и обвинениям в неидеальности? Что мне, кваку на константный фреймтайм переводить? Ну вот а фреймтайм станет константным если я просто включу всинк или укажу fps_max?

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

Старое сообщение 01-06-2020 17:34
- За что?
ncuxonaT
каков стол, таков и стул

Группа: Опытный
Дата регистрации: Oct 2009
Проживает: город/село/деревня
Сообщений: 1626
Возраст: 33

Рейтинг



Цитата:
Crystallize писал:
т.е. всё сводится к какому-то голому теоретизированию

Цитата:
Crystallize писал:
вижу что игрок который движется по окружности радиуса 100 оказывается процентов на 20 быстрее игрока который бежит по окружности радиуса 500


Думаешь, Кармак просто так капнул фпс на 60 в думе 3 и в рейдже?

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

Старое сообщение 01-06-2020 18:10
- За что?
Crystallize
Житель форума

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

Рейтинг



ncuxonaT ну тому может быть много причин, какова вероятность того что мы везунчики и наша проблема решается простой фиксацией фпс?

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

Старое сообщение 01-06-2020 18:16
- За что?
ncuxonaT
каков стол, таков и стул

Группа: Опытный
Дата регистрации: Oct 2009
Проживает: город/село/деревня
Сообщений: 1626
Возраст: 33

Рейтинг



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

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

Старое сообщение 01-06-2020 18:31
- За что?
 Дядя Миша
racing for fish

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

Рейтинг



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

Добавлено 01-06-2020 в 21:45:

Цитата:
ncuxonaT писал:
По-сути, он считал раньше интеграл дискретным суммированием и делать это можно лишь с минимальным возможным шагом времени, но попытка увеличивать этот шаг сразу же дает ошибку.

ошибку даёт во первых конечная точность вещественных и тот занятный факт, что флоаты по сути не аддитивны, ошибка накапливается.

__________________
My Projects: download page

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

Цитата:

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

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

Старое сообщение 01-06-2020 18:45
-
Ku2zoff
Мастер Ёда из Деревни Дуракоф

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

Рейтинг



Aynekko ты хочешь запретить прыжок? В player.cpp у тебя этого не выйдет. Только в pm_shared.c. Ну или playermove.cpp в XashXT.

Добавлено 02-06-2020 в 11:16:

Ещё раз повторю. Уровень стамины надо хранить в pev->fuser1 игрока, чтобы к ней был доступ из pm_shared.c. Там есть функция PM_Jump. В самом её начале можешь добавить маленькое условие

C++ Source Code:
if (pmove->fuser1 <= 15)
  return;
И всё. Минимальный уровень стамины укажешь сам.
Мне категорически не нравится запрет возможности двигаться и прыгать при низкой стамине (за это я недолюбливаю СВАЛКЕР). В своём моде я решил использовать стамину как силу в Jedi Academy. Когда её достаточно, игрок может спринтить, высоко и далеко прыгать, долго плавать под водой. Если же её мало - он быстрее утомляется, прыгает чуть ниже, бегает чуть медленнее, быстрее задыхается под водой. Реген здоровья тоже происходит медленнее при низкой стамине.

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

Старое сообщение 02-06-2020 04:16
- За что?
Aynekko
Маппер

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

Рейтинг



Ku2zoff, спасибо. Я помню. Но пока не разобрался, как это сделать, для меня "хранить в pev->fuser1" мало о чем не говорит… Думал, может проще есть способ, как в мультике.

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

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

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

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

Рейтинг



В начале функции PlayerJump поставить какое-то условие.

__________________
My Projects: download page

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

Цитата:

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

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

Старое сообщение 02-06-2020 09:28
-
Crystallize
Житель форума

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

Рейтинг



Цитата:
Crystallize писал:
Там трение большую роль играет и игрока по факту заносит?


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

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

Старое сообщение 04-06-2020 03:54
- За что?
JPEG
Житель форума

Дата регистрации: Sep 2013
Проживает: рф
Сообщений: 659

Рейтинг





Как убрать ограничение на уровень опускания/поднятий рук? Даже при стандартном cl_pitchdown 89 модель явно не опускает руки до этой отметки (и тут ещё у модели стоит blend XR -90 90, при стандартном значении вместо опускания рук после определённого угла наклоняется по оси ВСЯ модель). Перелопатил StudioModelRenderer.cpp но что-то ничего дельного не нашёл

__________________
МОЙ НОВЫЙ ПАБЛИК ПО ХЛ))

перехожу на другой двиг

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

Старое сообщение 09-06-2020 18:18
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32188
Нанёс повреждений: 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: Записан
Сообщение: 194802

Старое сообщение 09-06-2020 18:31
-
Тема: (Опционально)
Ваш ответ:



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


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

Временная зона GMT. Текущее время 20:25. Новая тема    Ответить
Страницы (260): « Первая ... « 153 154 155 156 [157] 158 159 160 161 » ... Последняя »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Теория и практика > Half-Life SDK > Нубские вопросы от <censored> и других нубов
Чтобы не создавать сто тем
7 голосов
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

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

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

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

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