forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Управление персом (http://forum.boolean.name/showthread.php?t=2197)

DeltaOps 26.12.2006 08:28

Управление персом
 
Пишу шутер и возник такой вопрос: как лучше сделать приседание глав. перса? Программно или анимацией?
Перс представляет собой AABB куб с прикрепленной камерой наверху. Если делать программно - надо, я так понимаю, скейлить куб, сдвигать камеру вниз. А анимацией проще и например при отбросе теней будет реальнее. Это я из Фиар подсмотрел :) Там и прыжок анимирован. А может лучше как-то по другому перса сделать?

НУБ 26.12.2006 08:38

Re: Управление персом
 
Система коллизий какая, стандартная ил физ. двиг?
А вообще конечно нужны анимации приседания и прыжка, полюбому.
Я бы совместил анимацию и операции с ограничивающим телом ;)

moka 26.12.2006 08:42

Re: Управление персом
 
Усли импользуется стандартный коллизионный двиг, то тогда делай анимацию, и узнавай высоту мэша, на текущей анимации, и меняй этот параметр у элипсоида коллизии перса.
Если же у тебя Физ. двиг используется, то тут можно обойтись только анимацией, но не длинной, а состоящей из частей, ну присел, сидит, встаёт, и просто прикрепляй камеру, к кости головы.

НУБ 26.12.2006 08:51

Re: Управление персом
 
Как это? Как раз ббокс(или капсулу) двигать/скейлить нужно, по ней ведь коллизии считаются... т.е. если ПС присел, то он с точки зрения физики должен стать ниже, чтобы пролезть в какую-нить трубу, точно также и с прыжком... :)

moka 26.12.2006 08:54

Re: Управление персом
 
Цитата:

и узнавай высоту мэша, на текущей анимации, и меняй этот параметр у элипсоида коллизии перса
Да, тоесть я предлагаю делать сферу, а не куб, т.к. куб, это очень глупо для перса. И просто вычеслять высоту мэша На текущей анимации, и менять высоту Этого элипсоида (сферы), коллизионной командо EntityRange. Вот =)
А камеру прикрепить к кости Головы, тоесть она будет двигатся как голова в анимации, но крутиться будет от мыши. Так делают сейчас в новых играх, таких как HL2, Dark Messiah, Oblivion и др.

НУБ 26.12.2006 09:02

Re: Управление персом
 
Блин только сейчас заметил, у него же шутер и как я понял - от первого лица, т.е. самого персонажа в таких случаях вообще нету(точка камеры и руки с оружием перед ней), так зачем тогда нужна анимация, для чего?:)
А в качестве ограничивающего тела чаще всего берётся капсула, а не элипсоид или ббокс(это автор упомянул, что юзает бокс) ;)

DeltaOps 26.12.2006 09:24

Re: Управление персом
 
Пасибо за ответы
Цитата:

Система коллизий какая, стандартная ил физ. двиг?
Стандартная, Блицевская.
Цитата:

Да, тоесть я предлагаю делать сферу, а не куб, т.к. куб, это очень глупо для перса
Почему глупо? Куб более точно описывает тело нежели сфера
Цитата:

зачем тогда нужна анимация, для чего
Чтобы не геммороиться с программным прыжком, и при построении тени от перса было бы видно что это не куб, а человек :) Посмотри FEAR, там песр сделан моделью и прыжок с приседом анимированны.
Цитата:

А в качестве ограничивающего тела чаще всего берётся капсула, а не элипсоид или ббокс(это автор упомянул, что юзает бокс)
В блице нет примитива капсула, я просто создаю куб, вытягиваю его вверх, ставлю ему нулевую альфу и креплю на уровне верхней плоскости камеру. При управлении - по горизонтали (обзор влево\вправо) вращаю бокс, а по вертикали (обзор вверх\вниз) вращаю камеру.
ЗЫ
Хотелось бы услышать еще мнений.

НУБ 26.12.2006 09:30

Re: Управление персом
 
А зачем в таком случае нужен этот куб, если ты юзаешь сферу(элипсоид)? Если нужна тень от перса(не везде её делают от главного персонажа...), то конечно делай его с анимацией, ноу проблемс :)
Вот только програмно описать прыжок этой самой сферы(вернее элипсоида, лучше его юзать) серавно придётся, параллельно анимации :)

moka 26.12.2006 09:40

Re: Управление персом
 
Не думаю что в Фэар, сделали прыжок только анимацией, если они физику такую замутили, то и прыжок, у них физический, просто с проигровкой анимации.

У меня есть дома код, если интерестно могу принести, там полностью движение и прыжок, пока без анимаций (нету перса), ну и примедание могу сделать, всё динамично. Делал на подобие HL2.

ЗЫ
Хех, каждому своя игра.

moka 26.12.2006 09:41

Re: Управление персом
 
Если по тебе стреляют, то не будут попадать, если пуля прошла между ног или над плечём, или что-то в этом роде.

DeltaOps 26.12.2006 10:10

Re: Управление персом
 
Цитата:

Сообщение от НУБ
Вот только програмно описать прыжок этой самой сферы(вернее элипсоида, лучше его юзать) серавно придётся, параллельно анимации

Угу, согласен.
Цитата:

Сообщение от MoKa
Не думаю что в Фэар, сделали прыжок только анимацией

Дык я и не говорил что там только анимацией сделано - это в принципе невозможно ибо не будет работать, ведь прыжок должен учитывать множество окружающих факторов (положение\коллизия), а анимация это можно сказать статика.
Цитата:

Сообщение от MoKa
У меня есть дома код, если интерестно могу принести

Нет, спасибо, нелюблю разбираться в чужом коде - на это уйдет больше времени чем если бы написать свой(который уже написан :-))
Цитата:

Сообщение от MoKa
Если по тебе стреляют, то не будут попадать, если пуля прошла между ног или над плечём, или что-то в этом роде.

Угу, вот поэтому и нужно делать не боксом\капсулой\сферой, а моделью(чтобы был контроль попаданий). А чтобы убить сразу двух зайцев, я и думаю анимировать приседание. Прыжок тут безусловно надо делать программно, это не вопрос. Вопрос был в том что лучше, но я кажется сглупил - тут и так ясно что надо делать моделью и анимацией иначе это будет не шутер :)
Большое спасибо всем за ответы, вопрос закрыт.

moka 26.12.2006 13:24

Re: Управление персом
 
Цитата:

нужно делать не боксом\капсулой\сферой, а моделью(чтобы был контроль попаданий
Есть исходящий, а есть входящий вид коллизии, тоесть пуля будет с моделью, а сфера в которой модель с уровнем.


Часовой пояс GMT +4, время: 08:43.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot