forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Xors3D (http://forum.boolean.name/forumdisplay.php?f=126)
-   -   взаимодействие "ног" с игровым миром (http://forum.boolean.name/showthread.php?t=15182)

Mind 27.07.2011 11:38

взаимодействие "ног" с игровым миром
 
Привет всем!
Долго думал начинать эту тему или нет ( где-то 3 месяца возился сам и не хотел утруднять чужие мозги своим вопросом...), но когда дело дошло до краиних мер решил написать.
Итак я у меня есть капсула игрока, её передвижение в игровом/физическом мире.Что еще надо спросите вы? А надо такая мелочь как "Ноги", т.е их взаимодействие с физ.миром.
Кто играл в кс мог заметить что когда перс подымается по ступенькам то подскакивает немножко (т.е как бы его ноги взаимодействуют с миром).
Вот и я хочу сделать аналог кс или Call of Duty MW2(там тоже замечал подобное).
Если вдруг кто-то сталкивался с этой проблемой ( хотя шансы 1 к 10000) то прошу ваши советы! :-)

Reks888 27.07.2011 12:34

Ответ: взаимодействие "ног" с игровым миром
 
Не вижу никаких "ног" в кс, ступеньки скорее просто при контакте подбрасывают тебя немного вверх
Точнее где-то в коде написано "Если_штука_перед_тобой_не_больше_15_сантиметров_в _высоту=True Then Запрыгнуть_на_эту_штуку"

Amatsu 27.07.2011 12:54

Ответ: взаимодействие "ног" с игровым миром
 
Где подвох?

1) Делаешь физическую капсулу
2) Делаешь на уровне физические невысокие ступеньки
3) ...
4) Profit!

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

Mind 27.07.2011 13:00

Ответ: взаимодействие "ног" с игровым миром
 
Amatsu, все что ты написал я это знаю.

Подвог в передвижении капсулы.Ведь когда идет небольшое( на уровне коленей) припятствие капсула с ним сталкивается и пытается поднятся в верх по законам физики(но при этом на экране видно что что-то нас затормозило(а я хочу этого избежать)).Хочу чтоб небольшие припятствия капсула проходила незаторможено (т.е подскакивала до высоты припятствия).
Как это можно реализовать??

Reks нет доказано опытом.

den 27.07.2011 13:14

Ответ: взаимодействие "ног" с игровым миром
 
Сделать 2 модели уровня:
1) С выступами, тексутрами и тд (её будем отображать)
2) Просто меш (низкополигональный), где в нужных местах не выступы, а горки (будем использовать для физики)

Amatsu 27.07.2011 13:16

Ответ: взаимодействие "ног" с игровым миром
 
Эм... ответ очевидный - не делай ступеньки высотой до колен. Возьми тот же CS - там либо низенькие ступеньки, либо высокие ограждения, на которые можно лишь запрыгнуть.
Все еще не до конца понимая что ты хочешь, предложу - делаешь на модели уровня ступени полигонами, а поверх этих ступеней под наклоном делаешь наклонную невидимую плоскость, с которой персонаж будет коллизится. В результате ты бежишь по ступенькам вверх, но камера при этом не скачет и капсула не спотыкается об полигоны, хотя визуально это остаются полигональные ступеньки

Mind 27.07.2011 14:23

Ответ: взаимодействие "ног" с игровым миром
 
Den и Amatsu я так тоже делал. Но все же хочу как в кс.Хотя бы теорию как оно реализовано.Как происходит подскакивание персонажа?

Цитата:

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

ARA 27.07.2011 15:31

Ответ: взаимодействие "ног" с игровым миром
 
http://forum.boolean.name/showpost.p...7&postcount=35
глянь тут. Во врапере есть как раз пример с капсулой и лестницей. И т.к. и там и там буллет, возможно удасца передрать этот пример на ксорс.

Mind 27.07.2011 17:54

Ответ: взаимодействие "ног" с игровым миром
 
ARENSHI спасибо за ссылку но такие примитивы и я знаю( насчет капсулы и лесницы). Зато было интересно смотреть на мягкие тела и покататся на машинке
ЗЫ у меня не булет а враппер.

Так и знал что меня не поймут,чего я хочу ... Прийдется экспереминтировать :user:


Кстати можешь рассказать как в вашей игре реализовано передвижение игрока

Mind 27.07.2011 19:31

Ответ: взаимодействие "ног" с игровым миром
 
Вот пока что получилось:
DemoGame
Управление:
WASD - передвижение
E - действие(брать коробки,бочки/открывать двери)
Space - прыгать
Lshift - бежать
LCtrl - присесть
R - перезарядка(пока просто анимация)
LMB - огонь(пока просто анимация)

ARA 27.07.2011 19:54

Ответ: взаимодействие "ног" с игровым миром
 
Mav через 5 секунд после запуска игры - чёрный экран, посреди надпись Doors

Mind 27.07.2011 21:44

Ответ: взаимодействие "ног" с игровым миром
 
Вложений: 1
Незнаю что может быть не так но у себя на компе все варианты перепрбывал.Разве что у тебя не установлены драйвера на ксорс и физикс?( но врядли(да и к тому же причем тут Doors) ). Хз..?
На попробуй скинуть в директорию игры с заменой оригинала:
ЗЫ после замены этого файле двери не будут открываться

NitE 27.07.2011 21:48

Ответ: взаимодействие "ног" с игровым миром
 
Попробуй залить на нормальный хостинг.

Mind 27.07.2011 23:06

Ответ: взаимодействие "ног" с игровым миром
 
А толку?
Что изменится?
Сам пробывал качать свой же файл с депозита и все пашет норм. Прочитай выше мой пост и закинь в папку с игрой файл в аттаче!! должно иди.

ЗЫ если вдруг у кого-то запустится мой пример то пишите мне про баги и глюки буду исправлять. Спсибо.

NitE 27.07.2011 23:20

Ответ: взаимодействие "ног" с игровым миром
 
Ну я, например, так и не смог скачать. То что у тебя пашет всё норм чотка без смс 100% мне как-то не помогает.

Кстати, ты читал это? Второй пункт.

Mind 27.07.2011 23:22

Ответ: взаимодействие "ног" с игровым миром
 
Блин ты че с депозита не можешь скачать? Ккого х...
Предложи хостинг

NitE 27.07.2011 23:25

Ответ: взаимодействие "ног" с игровым миром
 
http://hotfile.com/ ну этот, например.

Mind 27.07.2011 23:34

Ответ: взаимодействие "ног" с игровым миром
 
Вот на ссылку на игру:
Игра

ARA 28.07.2011 00:01

Ответ: взаимодействие "ног" с игровым миром
 
Запустилось от имени администратора. Игрок передвигается со скоростью черепахи и по лестницам не поднимается. Не ясно что у тебя в проекте делают длл-ки физикса. Современный Ксорс давным давно юзает Буллет. Кто хранит ресурсы в корневой папке проекта? Никто.

зы. Стрельба годная вышла.

Mind 28.07.2011 00:08

Ответ: взаимодействие "ног" с игровым миром
 
Цитата:

Игрок передвигается со скоростью черепахи
Поправимо..
Цитата:

и по лестницам не поднимается
Исключено(там выполняются команды из кода).Хотя.. Ты первый аттач скачал или же заменил файлик?
Еще может быть у тя комп не слишком быстрый и некоторые команды проскакивают и не реагируют..
Когда к леснице подходишь впритык что происходит?

Цитата:

Не ясно что у тебя в проекте делают длл-ки физикса. Современный Ксорс давным давно юзает Буллет.
По-моему я где-то в начале писал что использую не буллет.

Цитата:

зы. Стрельба годная вышла.
Ну хоть что-то тебя устроило :-)

NitE 28.07.2011 00:35

Ответ: взаимодействие "ног" с игровым миром
 
Тормозит просто ппц.
Переходи на буллет.
Где исходники ?
Двери на Е не открываются.

St_AnGer 28.07.2011 00:50

Ответ: взаимодействие "ног" с игровым миром
 
ходит, прыгает (глупо, но всё же), по лестницам поднимается, стреляет, не тормозит, двери открываются. "Утыканий" при подъёме на лестницы не встречал.

Срочно исправляй прыжок (он сейчас больше похож на double duck в кс, чем на прыжок) и прохождение оружия сквозь всё.

Mind 28.07.2011 01:00

Ответ: взаимодействие "ног" с игровым миром
 
Цитата:

Сообщение от NitE (Сообщение 196932)
Тормозит просто ппц.
Переходи на буллет.
Где исходники ?
Двери на Е не открываются.

Наверно тошо тормозит и команда не успевает реагировать.Ммм.. Буду испрвлять.

Цитата:

ходит, прыгает (глупо, но всё же), по лестницам поднимается, стреляет, не тормозит, двери открываются. "Утыканий" при подъёме на лестницы не встречал.
Вот этого ответа я и ждал.

Все завтра будет исправлено(надеюсь,если не здохну :4to: )



P.S Кстати у меня Vsync включен.

NitE 28.07.2011 03:21

Ответ: взаимодействие "ног" с игровым миром
 
Цитата:

Наверно тошо тормозит и команда не успевает реагировать.Ммм.. Буду испрвлять.
Что это за бред ? Как у тебя вообще код построен ? Реагировать он должен в любом случае, хоть через миллион лет.

ARA 28.07.2011 04:09

Ответ: взаимодействие "ног" с игровым миром
 
Смотрю пишут в игре ещё и прыжок есть. Он у меня тоже не работает. При подходе к лестнице утыкается в неё как в стену. Так и скажи, что нанял за еду пару индусов код писать :)

Цитата:

Еще может быть у тя комп не слишком быстрый и некоторые команды проскакивают и не реагируют..
Конфиг не слишком быстрого компа:
http://forum.boolean.name/showthread...E1%F3%EB%EA%E0

А какие системные требования у твоей игры?

Mind 28.07.2011 10:19

Ответ: взаимодействие "ног" с игровым миром
 
Цитата:

Сообщение от NitE (Сообщение 196944)
Что это за бред ? Как у тебя вообще код построен ? Реагировать он должен в любом случае, хоть через миллион лет.

Да нет. Когда я ставил на уровень модельку 133 567 поликов и когда на неё смотрел и нажимал стрелять он не стреляь ( надо было несколько раз нажть LMB ), т.к слишком тормозил (FPS = 3 - 9)
PS Еще если ты кинул файлик(LevelA) с заменой то двери не будут открываться т.к эт я специально сделал для ARENSHI.

Nite скоко FPS и какая конфигурация компа?

Цитата:

Так и скажи, что нанял за еду пару индусов код писать :)
:-D

Mind 28.07.2011 10:37

Ответ: взаимодействие "ног" с игровым миром
 
Еще напомню Управление:

А то все чет думают я токо способен сделать передвижение перса... :mad:


Управление:
WASD - передвижение
E - действие(брать коробки,бочки,шары/открывать двери)
Space - прыгать
Lshift - бежать
LCtrl - присесть
R - перезарядка(пока просто анимация)
LMB - огонь(пока просто анимация)

Mind 28.07.2011 12:32

Ответ: взаимодействие "ног" с игровым миром
 
Вложений: 4
Вот Demo(исправленная) и несколько скриншотов:

Жека 28.07.2011 12:33

Ответ: взаимодействие "ног" с игровым миром
 
Цитата:

Сообщение от Mind (Сообщение 196953)
когда на неё смотрел и нажимал стрелять он не стреляь ( надо было несколько раз нажть LMB ), т.к слишком тормозил (FPS = 3 - 9)

по этому можно судить о "неправильной" обработке мышки (и предположить это же про кнопки), т.к. счётчик нажатий клавиш MouseHit сам по себе не обнулится (а прорваться сквозь тормоза по идее должен, или нет?).

Если прямо в if пишешь if(MouseHit(1)) ... то отсюда проблемы.
А если в начале главного цикла в глобальную переменную сохранишь
mouseHit1 = MouseHit(1)
и в условиях эту переменную проверять будешь, то некоторых проблем можно избежать.

Mind 28.07.2011 12:34

Ответ: взаимодействие "ног" с игровым миром
 
Ясно буду знать

NitE 28.07.2011 20:09

Ответ: взаимодействие "ног" с игровым миром
 
Core2 P8700 2.53GHz
3gb ram
radeon 4650hd 512mb

В среднем гдето 45 фпс. Левел скачал отдельный, т.к. не запускалось иначе (да и с ним с третьего раза гдето).

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

Кстати, хостинг я те посоветовал дерьмовый, извиняюсь. Выкладывай сюда http://rghost.ru/, когда будет что выкладывать.

Mind 28.07.2011 21:59

Ответ: взаимодействие "ног" с игровым миром
 
Вобщем я понял что двери не открываются т.к ты левел скачал и заменил(там двери не должны открываться,а значит никаких ошибок в коде нет..)

Цитата:

В среднем гдето 45 фпс. Левел скачал отдельный, т.к. не запускалось иначе (да и с ним с третьего раза гдето)
А почему так.. с третьего? Что было при первом и втором?

Reizel 29.07.2011 00:18

Ответ: взаимодействие "ног" с игровым миром
 
Цитата:

Еще может быть у тя комп не слишком быстрый и некоторые команды проскакивают и не реагируют..
Доставило)))

NitE 29.07.2011 04:34

Ответ: взаимодействие "ног" с игровым миром
 
В кризисе у меня на высоких 60 фпс, в твоей игре 45 фпс. Следовательно - одна сплошная ошибка в коде (или в медии). Первые запуски (и до, и после замены левела) шло что-то типа загрузки, потом надпись "Meshes" и всё.

Запустилось только с заменой левела и от имени админа (я-бы и не догадался, еслиб не Аренши).

Mind 29.07.2011 11:48

Ответ: взаимодействие "ног" с игровым миром
 
Мля.. Ну какого х*я у всех запускается от имени админа..
Даже не знаю что это вызывает.Почему от администратора.Хз...
Буду пилить зубами код и исправлять.

Цитата:

В кризисе у меня на высоких 60 фпс, в твоей игре 45 фпс
0_о!!!?? ну ты и сравнил там "величайшие умы" трудились чтоб оптимизировать графику. Я еще этим не занимался, но буду...

Nex 29.07.2011 11:55

Ответ: взаимодействие "ног" с игровым миром
 
Цитата:

Запустилось только с заменой левела и от имени админа
Пишет че то в папку с игрой? :)

St_AnGer 29.07.2011 14:31

Ответ: взаимодействие "ног" с игровым миром
 
У меня и без прав админа спокойной запускается, система - Win7 x86 максимальная. Ну хотя... Я всю безопасность родную от системы выключил, наверно по этому. Кстати, проверил на стареньком слабеньком компе (2003 г. сборки, с немного обновлённой видеокартой) - вполне ничего так работает, 40-45 фпс. Тени бы убрать пока что, и будет вообще летать шустренько.

Crysis по ходу дела ещё очень долго будет для многих являться эталоном графики и оптимизации :)

Mind 29.07.2011 17:55

Ответ: взаимодействие "ног" с игровым миром
 
Цитата:

Сообщение от St_AnGer (Сообщение 197074)
У меня и без прав админа спокойной запускается, система - Win7 x86 максимальная. Ну хотя... Я всю безопасность родную от системы выключил, наверно по этому.

Хорошо :) Но странно в чем же проблема то(начсет прав админа)?

Цитата:

Сообщение от St_AnGer (Сообщение 197074)
Кстати, проверил на стареньком слабеньком компе (2003 г. сборки, с немного обновлённой видеокартой) - вполне ничего так работает, 40-45 фпс.

Ммм..Это тоже хорошо. Но все же буду оптимизировать графику :cool:


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

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