![]() |
Как я делал перемещение физического игрока и все работает
Код:
xEntityAddCapsuleShape(camera,20,5,5) ;//тут примерные значения с ними у вас может и не работать |
Ответ: Как я делал перемещение физического игрока и все работает
распиши все в функции для удобства )
|
Ответ: Как я делал перемещение физического игрока и все работает
Тупо код не очень информативно. Лучше всего сперва описать в письменном виде, какова логика и что ты реализуешь в коде, затем уже реализовывать.
|
Ответ: Как я делал перемещение физического игрока и все работает
А не проще было из локальных координат камеры тформить вектор перемещения и xEntitySetLinearVelocity(camera,xtformedX(),xTForm edY()-9,xTformedZ()); а?
|
Ответ: Как я делал перемещение физического игрока и все работает
хз привых по старинке, в каком то движке на Delphi лет 5 назад писал, перемещение вычислял синусом и косинусом
А так код будет понятен для тех кто боле менее шарит в ксорсе, если нет, то этот код ему незачем вообще пусть доростет. Код:
xEntitySetLinearVelocity(camera,10*sin(y*3.14/180),0,-10*cos(y*3.14/180)); |
Ответ: Как я делал перемещение физического игрока и все работает
Это не может работать. Как объект будет двигаться, если
Y получит 0 из функции xEntityYaw |
Ответ: Как я делал перемещение физического игрока и все работает
косинус нуля единица, что означает движение по оси Z вперед!
|
Ответ: Как я делал перемещение физического игрока и все работает
многие почему-то не могут сделать нормального перемещения для игрока. Специально для них привожу код.
Код:
Function AddHero(x#,y#,z#,yaw#=0) |
Ответ: Как я делал перемещение физического игрока и все работает
Ну чтож ты?) Вроде делишся, а вот тип не дописал, и функции AngleDiff нет. С типом то я справился а как же функция?) Допиши пожалст))
|
Ответ: Как я делал перемещение физического игрока и все работает
не стоит стопроцентно юзать мой код, он скорее на логику, как вариант реализации.
Функция вот : Цитата:
|
Ответ: Как я делал перемещение физического игрока и все работает
О,благодарю)) Слушай, я так понимаю ты просто набросал его или откудо то перекинул. Просто странно. Ты ссылаешся на тип HeroT через H. Хотя в функции ControlHero() нет хендла типа. Мне пришлось залить его туда, это верно, или же я чего то не понял?
|
Ответ: Как я делал перемещение физического игрока и все работает
Цитата:
|
Ответ: Как я делал перемещение физического игрока и все работает
Цитата:
Цитата:
|
Ответ: Как я делал перемещение физического игрока и все работает
H@NON, расскажи пожалуйсто зачем нам xTurnEntity для helpPivot ?
|
Ответ: Как я делал перемещение физического игрока и все работает
Пивот нужен лишь чтобы положить его параллельно земли под игроком. А поворачиваем его, чтобы пивот смотрел туда же куда и игрок.
|
Ответ: Как я делал перемещение физического игрока и все работает
H@NON, насчет пивота я сразу понял, тоже накануне так хотел намутить. Только вот в этом коде пивот со всеми повротами бесился постоянно, поэтому я их отключил и он кажется нормально вертется стал. А вот еще такой вопрос, у тебя когда игрок упирается в стену, дергается?
|
Ответ: Как я делал перемещение физического игрока и все работает
нет конечно, как раз поэтому нужно включить повороты) И ваще проверка на контакт дает неточный результат, лучше пускать вниз луч и проверять его. А ваще этот код логически не очень правильный) Просто он работает и этого хватает)
|
Ответ: Как я делал перемещение физического игрока и все работает
H@NON, млин я так и думал.
|
Ответ: Как я делал перемещение физического игрока и все работает
Привязал в этом коде камеру как в Samples "castle" .Заметил что камера изредка стопорится а перс ,движется далше.Я понял что причина гдето в этих значениях.
dx#=xEntityX(c\target,True)-xEntityX(c\camera,True) dy#=xEntityY(c\target,True)-xEntityY(c\camera,True) dz#=xEntityZ(c\target,True)-xEntityZ(c\camera,True) подставляю куб вместо камеры он точно так же изредка но исчезает-а эта команда xText 10,10,+xEntityX_#(c\camera,1) xText 10,20,+xEntityY_#(c\camera,1) xText 10,30,+xEntityZ_#(c\camera,1) вместо значений в этот момент выдает значение NaN.Надеюсь понятно описал проблему. Может кто подскажет что небуть как вариант или как подругому помягче привязать камеру. |
Ответ: Как я делал перемещение физического игрока и все работает
никогда е видел такой проблемы, кроме случаев, когда камера привязка к физ телу, и скорость обновления физики маловата. Ну или на блице такое было, если в неправильном мечте двигать камеру и рендерить мир
|
Ответ: Как я делал перемещение физического игрока и все работает
Камера привязана именно к физическому телу.Тоесть к физическому телу камеру так не прикрутиь?Какие варианты есть чтоб привинтиь камеру.
|
Часовой пояс GMT +4, время: 01:36. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot