Как узнать что камера игрока смотрит в направлении персонажа? -
mastermax7777 - 11.02.2013
как сделать так, если камера игрок смотрит в том же направлении (< 180°), как игрок?
Я знаю, что нужно использовать GetPlayerFacingAngle и GetPlayerFrontVector но как? действительно плохо с такого рода вещи .. :/
+ + помогите pls
Re: Как узнать что камера игрока смотрит в направлении персонажа? -
Stepashka - 11.02.2013
Тригонометрию в школе изучал?
Re: Как узнать что камера игрока смотрит в направлении персонажа? -
mastermax7777 - 11.02.2013
Quote:
Originally Posted by Stepashka
Тригонометрию в школе изучал?
|
net =D
v plohoy shkole ..
Re: Как узнать что камера игрока смотрит в направлении персонажа? -
mastermax7777 - 11.02.2013
ya znayu cos,sin,atan .. nu kak blat : xD
Re: Как узнать что камера игрока смотрит в направлении персонажа? -
DrSlett - 11.02.2013
вроде так
PHP код:
stock SetPlayerFacePlayer(playerid, giveplayerid)
{
new Float:Pos[6];
GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
GetPlayerPos(giveplayerid, Pos[3], Pos[4], Pos[5]);
SetPlayerFacingAngle(playerid, (Pos[0] = -atan2((Pos[3] - Pos[0]), (Pos[4] - Pos[1]))));
return SetPlayerFacingAngle(giveplayerid, Pos[0] + 180.0);
}
Re: Как узнать что камера игрока смотрит в направлении персонажа? -
mastermax7777 - 11.02.2013
это Y-y / X-x не x-x/y-y? почему -atan а не просто atan?что лучше?
Не имеет значения, это не то, что я хотел, я хочу найти, если игрок смотрит перед собой или сзади своим игроком. Я надеюсь, вы понимаете)
спасибо за помощь
Re: Как узнать что камера игрока смотрит в направлении персонажа? -
Stepashka - 11.02.2013
Quote:
Originally Posted by mastermax7777
net =D
v plohoy shkole ..
|
Quote:
Originally Posted by mastermax7777
ya znayu cos,sin,atan .. nu kak blat : xD
|
После такого даже помогать неохота. Разбирайтесь сами.
Re: Как узнать что камера игрока смотрит в направлении персонажа? -
mastermax7777 - 11.02.2013
ок .. Большое спасибо. Вы очень полезно. Я только пошутил ... -. -
Вы спрашиваете меня вопросы, которые я бы не спрашивал, если бы я знал, как это сделать ..
Re: Как узнать что камера игрока смотрит в направлении персонажа? -
JM_Millers - 11.02.2013
Он американец походу
Re: Как узнать что камера игрока смотрит в направлении персонажа? -
Stepashka - 11.02.2013
Это школьная программа: определение угла наклона прямой по двум точкам на этой прямой.
Re: Как узнать что камера игрока смотрит в направлении персонажа? -
mastermax7777 - 11.02.2013
pawn Код:
new Float:scale=3.0, Float:rotZ;
GetPlayerCameraFrontVector(playerid, fX,fY,fZ);
GetPlayerCameraPos(playerid, camX,camY,camZ);
GetPlayerPos(playerid, pposX,pposY,pposZ);
shootX = camX + floatmul(scale, fX);
shootY = camY + floatmul(scale, fY);
rotZ = atan2(shootY-camY,shootX-camX);
new str[128]; format(str,sizeof(str),"atan2: %.2f",rotZ);
SendClientMessage(0, -1, str); //debug
rotZ-=90.0;//это нужно, когда я тестировал?
if(rotZ<0.0) rotZ+=360.0;
if(rotZ>360.0) rotZ-=360.0;
new Float:ang; GetPlayerFacingAngle(playerid, ang);
format(str,sizeof(str),"GetPlayerAngle: %.2f atan: %.2f Angle-atan:%.2f",ang,rotZ,(rotZ-ang));
SendClientMessage(0, -1, str);
if(floatabs(rotZ-ang)<=90) SendClientMessage(0, -1, "Legit shot (Good)");
else return SendClientMessage(0, -1, "NOT LEGIT (bad)");
Не работает очень хорошо, если угол составляет 350, и atan2 составляет 20, то 350 - 20< 90 это не удается,
почему то, что я делаю неправильно
Re: Как узнать что камера игрока смотрит в направлении персонажа? -
Gameyer - 11.02.2013
Quote:
Originally Posted by Stepashka
Это школьная программа: определение угла наклона прямой по двум точкам на этой прямой.
|
Напомнило С2 из ЕГЭ по математике. Ещё можно через угл между плоскостью и прямой (через скалярное произведение векторов). Но этот аналог потяжелее.
Re: Как узнать что камера игрока смотрит в направлении персонажа? -
Stepashka - 11.02.2013
Quote:
Originally Posted by Gameyer
Напомнило С2 из ЕГЭ по математике. Ещё можно через угл между плоскостью и прямой (через скалярное произведение векторов). Но этот аналог потяжелее.
|
Я кстати тут на форуме выкладывал уже функцию для нахождения данного угла, там вроде 3 строчки.
Re: Как узнать что камера игрока смотрит в направлении персонажа? -
Gameyer - 11.02.2013
Quote:
Originally Posted by Stepashka
Я кстати тут на форуме выкладывал уже функцию для нахождения данного угла, там вроде 3 строчки.
|
Там больше и не нужно.
Re: Как узнать что камера игрока смотрит в направлении персонажа? -
mastermax7777 - 11.02.2013
gde ? O chom ve govorite?
Я делаю это правильно? посмотрите на код