![]() |
Камера от MMORPG
Вложений: 1
Помогите, пожалуйста разобраться с камерой на объект. В общем опишу ситуацию.
Есть проект я его приаттачил на пост Существует камера и объект. Камера привязана к объекту т.е. Вид от 3 лица. Поворот камеры осуществляется при помощи мыши: ![]() Но проблема не в этом когда начинаешь движение то объект перемещается сам по себе независимо от расположение камеры т.е. если мы повернем камеру смотря спереди на объект то для движения вперед нужно будет нажать назад: ![]() Кто знает как рассчитать угол поворота камеры относительно объекта, так, чтобы объект поворачивался на столько, на сколько был повернут бы Пивот, стоящий внутри объекта который прикреплен к объекту, а к пивоту прикреплена камера, вот так: ![]() |
Ответ: Камера от MMORPG
Очень много пэрэнтов. Я бы всё заново переписал лучше.
|
Ответ: Камера от MMORPG
Имхо в ММОГ играх камера подтягивается за движущимся игроков а не наоборот.
|
Ответ: Камера от MMORPG
Кстати ,да. Вы что то путаете goodwin74
|
Ответ: Камера от MMORPG
Алсо, классные гифки!
|
Ответ: Камера от MMORPG
Ща чтонить ляпну:
Можно выщщетать на какой угол повёрнута камера в данный момент(например на 30 градусов) и повернуть игрока на 30 градусов, а камеру на -30(в противоположную сторону) :-) |
Ответ: Камера от MMORPG
Ты не можешь узнать на какой угол повернуто что либо связанное с камерой.
|
Ответ: Камера от MMORPG
Хм. а что, блиц уже углы не возврашаетъ?
|
Ответ: Камера от MMORPG
Припэрнченный объект не возвращает координаты и угол насколько я знаю.
|
Ответ: Камера от MMORPG
не тестил, но вроде так должно работать.
;переводим кнопки->направление и заранее начинаем двигать перса (что не совсем правильно, но... наверное прокатит) if keydown(200) movex#=0:movey#=0:movez#=1:moveentity char,0,0,1 if keydown(208) movex#=0:movey#=0:movez#=-1:moveentity char,0,0,1 if keydown(203) movex#=-1:movey#=0:movez#=0:moveentity char,0,0,1 if keydown(205) movex#=1:movey#=0:movez#=0:moveentity char,0,0,1 positionEntity characterShouldFollowIt, entityx#(char),entityy#(char),entityz#(char),1 ; здесь char это перс, а characterShouldFollowIt это пивот, который мы в каждом кадре ставим в его позицию TFormNormal movex,movey,movez, Camera, characterShouldFollowIt ;переводим направление движения от камеры к пивоту AlignToVector TFormedX#(),TFormedY#(),TFormedZ#(),3 ;ставим пивот так, чтобы он смотрел в направлении движения относительно камеры ; берём угол вращения по Y этого пивота roty# = EntityYaw#(characterShouldFollowIt) ; интерполируем текущий поворот чела на пивотовский супер-функцией от Моки roty# = MergeAngles#(EntityYaw#(char),roty#,.1) ; применяем RotateEntity(char,EntityPitch(char),roty#,EntityRo ll#(char)) Function MergeAngles#(Angle1#,Angle2#,Morph#=.5) If Abs(Angle1-Angle2)>180 If Angle1<Angle2 Return Angle1-((360-Angle2)+Angle1)*(.5-(Morph-.5)) Else Return Angle2-((360-Angle1)+Angle2)*(.5+(Morph-.5)) EndIf Else Return Angle1*(Morph)+Angle2*(1.0-Morph) EndIf End Function |
Ответ: Камера от MMORPG
Цитата:
|
Ответ: Камера от MMORPG
Цитата:
Цитата:
Цитата:
Цитата:
|
Ответ: Камера от MMORPG
Цитата:
Ну все верно entity handle не указан :) Mr_F_, набрал код в общем получается что при движение мыши по Y камера вертится вокруг объекта, а во время движения по Х объект начинается поворачиваться сам, а камера остается на месте. ![]() |
Ответ: Камера от MMORPG
вы чё гоните Blitz возвращает иглы притаченых объектов-EntityRoll(меш,1) и так далее,глобальный угол.
|
Ответ: Камера от MMORPG
Вопрос в лёт: как камеру от 3лица, заставить не проваливаться в стены,а убегать от них,оставляя направление просмотра без EntityPoint().А?(тупак ставишь-назад не вворачиваться)
|
Ответ: Камера от MMORPG
|
Ответ: Камера от MMORPG
Хм... чтож вы меня не спросили, я как раз такую систему сделал в своей игре %) Если кому-то еще надо, набросал простенький пример
Код:
Graphics3D 1024,768,32,1 |
Ответ: Камера от MMORPG
Неха маленький код на камеру:4to:
|
Ответ: Камера от MMORPG
Цитата:
|
Ответ: Камера от MMORPG
|
Ответ: Камера от MMORPG
Цитата:
|
Ответ: Камера от MMORPG
Цитата:
Сперва, что такое string (технически), и как он реализован на уровне памяти и переменных. А затем функции, по работе с ними, всякие там поиски в string'е, обрезания, сравнивания, конвертация одного типа данных, в string, и многое другое. Там немалый лес, и много работы с битами. Эм, зачем это я рассказываю.. |
Ответ: Камера от MMORPG
Цитата:
|
Ответ: Камера от MMORPG
Цитата:
|
Ответ: Камера от MMORPG
Код:
O_o не не не. Не автоматом! Это в Blitz3D это уже за тебя реализовано. |
Ответ: Камера от MMORPG
Цитата:
И вообще компьютер никто не делал, всё автоматом сделалось, и думает автоматом. Запомни. Всё что ты видишь в мониторе, ничего не сделано "автоматом", а то что работает на уровне железа, сделано умненькими инженерами, которые тоже не "пишут пару строк". Вообще у тебя никакого, даже базового понятия о том как компьютер и его компоненты работают и взаимодействуют? Даже в школе это преподают, несмотря на то какой там убогий предмет информатики. Костян, сразу на заметку, чтобы быть начитанным и немного образованным в чём-то. Используй фантазию, но только не для утверждений, а для поиска информации. Вообрази, что-то, но понимай что это что-то лишь тобою вооброжаемо. И пока ты найдёшь конкретного подтверждения своим "догадкам", не бросайся ими, как "утверждениями". Они останутся твоими "догадками", не более. Здесь "удача" не работает. Вот тебе, на вооружение: google.com - самый важный инструмент, я лично его открываю как каждый 5 сайт. А на работе, это вообще для меня каждая вторая закладка - это гуугл. Для образования и теоретической части, достаточно удобна ru.wikipedia.org, там есть куча всего. Можешь почитать что значит большинство терминов, на любую тему, которые ты встречаешь. Если есть стремление к знаниям, то используй инструменты, для получения этих знаний. Короче говоря, увидел слово string, не поленись, вбей в гугле: "string wikipedia", далее, выбери строку: String (computer science), sequence of symbols or digits in computer programming И затем слева, переключись на русский, затем если будешь внимательным, дойдёшь до "Реализация в языках программирования", и будет что-то более ясным. Учись пока молод! Дерзай! Но бл..ть! НЕ ТУПИ. Детский сад... |
Часовой пояс GMT +4, время: 01:27. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot