HLFX.Ru Forum Страницы (13): « Первая ... « 4 5 6 7 [8] 9 10 11 12 » ... Последняя »
Показать все 187 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life FX (https://hlfx.ru/forum/forumdisplay.php?forumid=2)
-- Half-Life FX 0.7 beta (https://hlfx.ru/forum/showthread.php?threadid=3849)


Отправлено Scrama 15-03-2013 в 08:54:

marikcool, а теперь я тебе открою секрет (как практик): в процедурном языке можно написать тот же самый ОО-код, только члены класса станут членами структур типа FooStruct, а методы вместо Foo::DoSomething() будут выглядеть как Foo_DoSomething(FooStruct foo). Посмотри в код ВМ первокваки, там именно так и сделано. Ну, может, с той разницей, что вместо FooStruct foo там используется глобальная self, вовремя подменяемая нужным представителем структуры. По строчкам ты сэкономишь даже штуки три на класс. И это будет хорошо читаться и расширятся.
ООП - это не ключевые слова, а методология моделирования.

А то, что плагины под КС наговнокодены без ООП, нисколько не означает, что с ООП они были бы менее говнокодны. Дай дураку, как говорится.

__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran


Отправлено XaeroX 15-03-2013 в 10:05:

Первым делом я перенесу в серверную ВМ - pmove, а в клиентскую - тоже pmove и целиком ev_hldm. Это безо всяких классов, чистый процедурный код. А дальше поглядим.

__________________

xaerox on Vivino


Отправлено Scrama 15-03-2013 в 10:52:

XaeroX, как думаешь, можно что-то сделать с физикой на ступеньках? Уж больно топорно игрок по ним ходит и, тем более, прыгает.

__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran


Отправлено XaeroX 15-03-2013 в 11:35:

Scrama
Вроде же там есть интерполяция?

__________________

xaerox on Vivino


Отправлено Дядя Миша 15-03-2013 в 14:46:

Везде, во всех играх без исключения игрок и NPC ходят по ступенькам именно так. Ну то есть может со стороны оно выглядит иначе, но в действительности это рывок с небольшим движением вперед.
А для визуализации используется инверсная кинематика, например.
Вот бы Ксерокс взял и прикрутил инверсную кинематику в халфу.
Сам же хвастался, ему ничего не сложно. Подумаешь мовевитч!
А вот инверсная кинематика - да!


Отправлено nemyax 15-03-2013 в 14:56:

Цитата:
Дядя Миша писал:
А для визуализации используется инверсная кинематика, например.

Это когда решатель модифицирует запечённую анимацию, когда IK-ные кости-маркеры колоизируют? Как в думе ощим.


Отправлено Дядя Миша 15-03-2013 в 15:07:

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


Отправлено nemyax 15-03-2013 в 15:12:

Ну да. Под "колоизируют" я имел в виду сталкиваются с препятствием.
А то под инверсной кинематикой можно понимать не только такую фичу, а ещё и в целом систему анимации на основе следования за маркерами, как в 3д-пакетах.


Отправлено XaeroX 15-03-2013 в 15:31:

Дядя Миша
Спорить не буду - ничего сложного в этом нет.
Но мне это пока не интересно.
Может, потом и прикручу.

Добавлено 15-03-2013 в 22:29:

Только непонятно, кто будет в модельки соответствующую инфу заносить..

Добавлено 15-03-2013 в 22:31:

Цитата:
Дядя Миша писал:
А вот инверсная кинематика - да!

Кстати, готов спорить на твою таёту, что народ не заметит никакой инверсной кинематики в халфе.
Я, например, в хл2 её ни разу не видел, хотя судя по коду - она там есть.
Видимо, очень хитро спрятана.

__________________

xaerox on Vivino


Отправлено Дядя Миша 15-03-2013 в 15:55:

Цитата:
XaeroX писал:
Кстати, готов спорить на твою таёту

Давай лутьше на твою квартиру? %)

Цитата:
XaeroX писал:
Я, например, в хл2 её ни разу не видел, хотя судя по коду - она там есть.

Ну здравствуйте. Ты видел как там NPC ставят ноги на ступеньки?
Причём с учётом высоты этих ступенек. А видел как в начале хл2 тётка держится пальцами за текстурную сетку-рабицу?
А как эти же NPC оружие с пола подбирают?
А ты говоришь - нету.


Отправлено Scrama 15-03-2013 в 16:32:

Цитата:
XaeroX писал:
Вроде же там есть интерполяция?
Попрыгай вверх-вперед в ку3 и в хл, сравни ощущения.

__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran


Отправлено XaeroX 15-03-2013 в 16:36:

Цитата:
Дядя Миша писал:
Ну здравствуйте. Ты видел как там NPC ставят ноги на ступеньки?

В том-то и дело, что ни разу не обратил внимания.
А тётка, что держится за сетку - это ж обычная анимация, не?

Добавлено 15-03-2013 в 23:36:

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

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

__________________

xaerox on Vivino


Отправлено Дядя Миша 15-03-2013 в 17:07:

Цитата:
XaeroX писал:
А тётка, что держится за сетку - это ж обычная анимация, не?

Я бы так не сказал ))
Цитата:
XaeroX писал:
Если сделать анимацию, где непись переставляет ноги, чуть сгибая в колене

Но веть и ступеньки-та разной высоты бывают! Кому же понравится что монстер утопает в полу?
К тому же, если ты сделаешь инверсную кинематику, можно будет делать игры про прокур, как Mirrors Edge - серъезный аргумент, чтобы уйти с ксаша


Отправлено ONeiLL 15-03-2013 в 17:51:

Вы про то, чтобы моделька двигалась реалистично, и движение совпадало с анимацией? Если да то это делается не так и трудно. Для каждой ноги надо хранить её скорость (а точней вектор скорости не ноги, а подошвы). А дальше надо сделать трение. Если что - у меня в физ. движке сделано трение, можно подсмотреть, файл solver.cpp (я трение комментарием // friction выделил). Если там сложно, а там сложно потому что я warmstarting юзаю, то лучше посмотреть на геймдеве статью суслика "Солверы физических движков". Не знаю на сколько моя идея правильная, но если бы это делал я, то сделал бы именно так


Отправлено Дядя Миша 15-03-2013 в 17:55:

Цитата:
ONeiLL писал:
Для каждой ноги надо хранить её скорость

Спасибо, поржал.


Временная зона GMT. Текущее время 13:15. Страницы (13): « Первая ... « 4 5 6 7 [8] 9 10 11 12 » ... Последняя »
Показать все 187 сообщений этой темы на одной странице

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