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=4043)

Черный крыс 30.07.2007 23:37

Сэм Фишер или премудрости акробатики и контактного боя.
 
Привет всем!

Значит я задался вопросом на которые хочу получить ответы по моему самому любимому жанру... собственно это Экшены от 3-го лица. Впринципе все здесь ясно....и механика мало чем отличается от того же ФПС....я бы даже сказал бы - почти ничем. Но в этом жанре есть "скользкий момент" который мне не совсем понятен.....это контакт игрока с игровым уровнем и контакт с персонажем. Очень интересно узнать методы реализации "шагание по лестнице", "взбирание игрока на платформу высотой по пояс", "прыжок и зацеп игрока за край стены".

Crystal 30.07.2007 23:59

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
в виду сложности сея зацеп за край стены даже не стали в готике 3
реализовать



а подъём по лестнице можно сделать проще не заморачиваясь

просто делаеш невидимую наклонённую плоскость идущую прям по ступенькам

и будет эффект типа ходьбы по ступенькам
такое часто применяют

примеры игр где используется: Gothic, Lineage 2
да много где )

Raiter 31.07.2007 00:16

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
Вложений: 2
Цитата:

"прыжок и зацеп игрока за край стены
гы никогда над таким не думал :) вот первое что всбрело вголову сразу же после прочтения вопроса. :crazy: помещаем над головой перса "доску"... отключаем ей колизию, делаем её невидимую... Но во время прыжка (точнее его 2 стадии, когда перс летит уже вниз) врубаем для неё колизию... и вуаля! оно зацепилось :pure_magic: :crazy: ну а дальше врубаем нужные анимации персу двигаем его куды надо и т.д. в аттаче илюстрация :-)

Leito 31.07.2007 00:53

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
Raiter, бред нах

используя функцию Ymesh() от лаки проверяем координату Y точки спереди от перса
и если разнница высот точек(где стоит перс и ту что мы вычислили) удовлетворяет запрыгиваемой высоте - запускаем анимацию прыжка а дальше дело техники. можно например при окончании анимации останавливать перса как бы висячим. либо зная точку над персом(его кистей например) и как она достигнет утеса - останавливаем перса. и т д
я бы так делал

Crystal, в линаге на плоскость накладывают текстуру ступенек - и кажется что ступеньки.
не сделали в готике 3 - зато было в готике 1 и 2! (во второй точно было)

Crystal 31.07.2007 01:23

Leito
какая разница
легко поместить плоскость прямо в ступеньках наклонную и сделать
у перса с ней коллизию а сами ступеньки оставить без коллизии

а в г1 и 2 была цеплялка это точно


нащёт досок
можно сделать доску и над персом и в каждой нужной точке за которую можно будет зацепляться
ну и написать код что при столкновении этих досок персонаж зависает и врубаем анимацию висящего на руках перса

Какая текстура в ла2 ты что?
Там самые что ни на есть настоящие ступеньки с невидемой плоскостью

вот я тебе скрин сделал

http://img114.imageshack.us/img114/8989/shot00524rz8.jpg

Raiter 31.07.2007 02:45

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
Цитата:

Ymesh() от лаки
Не знаю такое :)

Имхо мой варинат вполне рабочий...

Черный крыс 31.07.2007 03:00

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
Ok. Вроде вы меня на кое - какие мысли натолкнули.....=)))

Насчет лестниц....я не совсем это имел виду.....надо сделать чтобы перс подымаясь по лестнице - точно ставил ноги на ступеньки.....и при этом если перс остановиться боком к лестнице - чтобы одна нога стояла на одной ступени а другая на другой.....=))) возможно ли это???

Crystal 31.07.2007 03:03

А мне кажется игрок не должен зацепляться за всё подряд если допрыгивает
а только за те объекты за которые разработчик сочтёт нужным


вот в готике второй можно было зацепица какраз методом типа того что Leito сказал

и я благадаря этому весь сюжет игры поламал
в первой главе тупо немного помучавшись таки смог залезть на гору
и добраться до далины рудников
и выбраться мне тоже удалось.

там вообще весь игровой мир большая гора окружает я по ней всей прошол

Цитата:

Сообщение от Diablo1909
Ok. Вроде вы меня на кое - какие мысли натолкнули.....=)))

Насчет лестниц....я не совсем это имел виду.....надо сделать чтобы перс подымаясь по лестнице - точно ставил ноги на ступеньки.....и при этом если перс остановиться боком к лестнице - чтобы одна нога стояла на одной ступени а другая на другой.....=))) возможно ли это???

Нет ничего невозможного (как ктото сказал) =)

Токо вот для этого тебе перса походу придётся обучить ходить по настоящему )) как роботов японцы учат....

Raiter 31.07.2007 03:06

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
Ну имхо... нужна анимация поднимания по леснице... Юзаем всё ту же плоскость. Тут главное анимацию в нужный момент врубать. Что бы перс точно попадал на ступеньки...

Цитата:

и при этом если перс остановиться боком к лестнице - чтобы одна нога стояла на одной ступени а другая на другой.....=))) возможно ли это???
А почему нет? Проверяем на леснице ли перец, проверяем углы поворота перса и лесницы, находим их разницу, если эта разница достигла опрделенного значения, анимируем перса с одной ногой на 1 ступеньке, а другой на другой ;)

Crystal 31.07.2007 03:20

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
А если ступеньки все разной высоты? ))
Под каждую высоту анимацию делать? =)

Raiter 31.07.2007 03:26

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
А нафик разной высоты ступеньки на леснице? 0.о

Crystal 31.07.2007 03:27

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
А вдруг строители ступенек малдавани были?

johnk 31.07.2007 10:34

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
Да хоть грузины, тут от моделера зависит.

Crystal 31.07.2007 18:37

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
Я к тому что все ступеньки не обязательно должны быть одного размера
я даже гдето такие видел )

Raiter 31.07.2007 19:28

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
Ну тогда предложи свой вариан... Чо ты мозги париш? :)

Crystal 31.07.2007 19:35

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
да тут както надо работать с физ движком
чтоб на кости в модели действовала гравитация

короче сложно всё
ненадо заморачиваться на такую фигню
просто делаем как я писал пару сообщений выше и ставим
обычную анимацию бега

Leito 02.08.2007 20:07

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
Raiter>
Код:

Function Ymesh(ent)
        PositionEntity Opivot,EntityX#(ent,1),EntityY#(ent,1),EntityZ#(ent,1)
    RotateEntity Opivot,90,0,0
    pic=EntityPick (Opivot,5000)
    If pic=0
            TranslateEntity ent,0.2,0,0
            ypick#=1000
    Else
                ppppp$=EntityName$(pic)
        ypick#=PickedY#()
        If EntityName(pic)="water"
            watPick=1           
        Else
            watPick=0 
        EndIf
             
    EndIf
Return ypick#
End Function

рульная функция.
в логово именно так проверял куда можно ходить а куда нет(да там не было колизии с полом) тока ошибку допустил. с расстоянием проверки.

На счет лестницы!

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

ЛысыЙ_Чук-Иванчук 02.08.2007 21:37

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
Leito- что ты свои функции пихаеш, мы прекрасно помним как напрегался чел залазия на мост:stinker:

Leito 02.08.2007 21:42

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
vlad, тоесть ты хочешь сказать что эта функция плохая и ее не нужно использовать?) тогда тормоза в студию))

ну и ваще я же сказал что ошибку допустил. проверка была через 0.000n расстояния - тоесть то что чел деалет за одну итеррацию главного цикла а не расстояния шага. вот из-за этого и батра.

Crystal 03.08.2007 18:06

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
А если так будет ходить и главный герой и армия ботов блитц не здохнет?

Leito 03.08.2007 19:13

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
Crystal, он же стелс делает там не очень много ботов нада.

moka 03.08.2007 22:25

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
Значит, сорри сразу что не прочитал всё что сдесь увидил, просто много букафф.
Значит моё видение:
Проекты такого рода - большие проекты: Prince of Persia, Assassin's Creed, и много ещё других. Есть ещё старая игра Rune, но реализация в ней отличаеться.
Насчёт Руны: Там есть стандартный редактор, всё делаеться на CSG (так называется? Ну там где всё паралепипедами, есть вырезиния и т.п., подобие редакторам на основе World Craft). Так вот, засчёт таких примитивных форм, не слождно вычесляеються те самые места изгибов и подобного.
В НехтГен: Там есть редакторы для объектов, в которых привязываються тригеры (паралелепипеды), все тригеры разных типов, например: Стена по которой можно забегать и бегать; или корниз, и стена, значит забегая по стене, зацепишся за корниз; и т.п.
Вся эта система упираеться в качественную анимацию, и систему по работе с костями, а так-же очень хороший редактор.
Анимация: Тут уже специфически, во первых должен быть доступ к костям: манипуляция и т.п. Имея к этому доступ, несложно будет реализовать подобное.

Насчёт Б3д, как это реализовать:
1. Редактор.
2. Работа с анимацией.
3. Сама анимация.
4. Не факт, но проще заюзать PhysX, т.к. там уже есть тригеры, и с этим будет намного проще работать.

Насчёт анимации, попробуй посмотреть вот Это. Моя недавняя наработка по работе с анимацией, там ещё много чего не реализовано что есть в планах. Но работа с костями есть, поэтому использовать уже можно, если желаешь конечно. (в дальнейшем будут поновее версии, синтаксис менять не буду, в планах ещё и мультианимация и рагдолы, и ещё всякие прянности).

moka 06.08.2007 11:20

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
Ы? Что-то тема внезапно замолчала?
АП! Автор где? ;)

Черный крыс 06.08.2007 14:45

Re: Сэм Фишер или премудрости акробатики и контактного боя.
 
Спасибо! клевая штука....


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

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