GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Szkript kérések => A témát indította: rewan - 2012. Április 09. - 21:38:48

Cím: Kamera hova néz?
Írta: rewan - 2012. Április 09. - 21:38:48
A kérdésem, valahogy le lehet-e kérdezni, hogy a kamera milyen pontra néz?
Z pozíció akár lényegtelen, az X és Y lenne a mérvadó :)
Cím: Kamera hova néz?
Írta: dexi - 2012. Április 09. - 22:47:49
Wikin találtam egy hasolnó dolgot és átalakítottam :D
 
stock GetPlayerLookPos( playerid, &Float:X, &Float:Y, &Float:Z )
{
new Float:fPX, Float:fPY, Float:fPZ,
Float:fVX, Float:fVY, Float:fVZ;
const Float:fScale = 5.0;
GetPlayerCameraPos(playerid, fPX, fPY, fPZ);
GetPlayerCameraFrontVector(playerid, fVX, fVY, fVZ);
X = fPX + floatmul(fVX, fScale);
Y = fPY + floatmul(fVY, fScale);
Z = fPZ + floatmul(fVZ, fScale);
}

 
pl.:
 
new Float:X, Float:Y, Float:Z; GetPlayerLookPos(playerid,X,Y,Z); SendFormattedMessage( playerid, -1, \"Ide nézel: %.2f %.2f %.2f\", X, Y, Z );

 
E:
A Scale a távolság, értelemszerûen minél nagyobb a táv annál messzebbi pontot kapsz végeredményként.
Cím: Kamera hova néz?
Írta: rewan - 2012. Április 09. - 22:56:44
Köszi, kipróbálom!

Dupla hozzászólás automatikusan összefûzve. ( 2012. Április 09. - 23:12:09 )

Ez már majdnem jó, próbálkozok kihozni belõle valami jót,
de nem tökéletes :(
Mûködése: A nézõpont irányába, fScale értékével megnövelt
távolságba teszi a célt.
Igazából FrontVector alapján szerintem lehetne állítgatni
az fScale-t, ha sikerült összehoznom valamit, akkor írom :)

Dupla hozzászólás automatikusan összefûzve. ( 2012. Április 09. - 23:37:15 )

Köszönöm a segítséget, ha a függvényben az fVZ alapján
módosítjuk az fScale értékét(amit nem \"const\", hanem \"new\"-ként
hozunk létre, hogy tudjuk módosítani), akkor kis játszadozással
megfelelõen be lehet lõni a szükséges távokat.