PDA

Просмотр полной версии : [Вопрос] По камере



$continue$
07.09.2014, 10:02
Доброе утро, уважаемый посетители Pro Pawn!
И у меня вопрос, по камере...
Можно ли как то убрать разворот ей?


new Float: p_pos_camera[3], Float:player_current_angle;
GetPlayerPos(killerid, p_pos_camera[0], p_pos_camera[1], p_pos_camera[2]);
const Float: CAM_DISTANCE = 5.0;
GetPlayerFacingAngle(killerid, player_current_angle);
p_pos_camera[0] = p_pos_camera[0] + CAM_DISTANCE * floatsin(-player_current_angle, degrees);
p_pos_camera[1] = p_pos_camera[1] + CAM_DISTANCE * floatcos(-player_current_angle, degrees);
SetPlayerCameraPos(playerid, p_pos_camera[0], p_pos_camera[1], p_pos_camera[2]);
SetPlayerCameraLookAt(playerid, p_pos_camera[0], p_pos_camera[1], p_pos_camera[2], 1);

wAx
07.09.2014, 10:20
В смысле плавное перемещение в движении?
Тогда:

SetPlayerCameraLookAt(playerid, p_pos_camera[0], p_pos_camera[1], p_pos_camera[2]);

$continue$
07.09.2014, 11:04
В смысле плавное перемещение в движении?
Тогда:

SetPlayerCameraLookAt(playerid, p_pos_camera[0], p_pos_camera[1], p_pos_camera[2]);

Мне надо, что бы было видно игрока, сделал как ты сказал, не очень видно скин...

Daniel_Cortez
07.09.2014, 21:39
Мне надо, что бы было видно игрока, сделал как ты сказал, не очень видно скин...
Какого именно игрока? Убитого (playerid) или убийцу (killerid)?

$continue$
07.09.2014, 21:41
Убийцу

Daniel_Cortez
07.09.2014, 21:52
const Float:CAM_DISTANCE = 5.0;
new Float:x, Float:y, Float:z;
GetPlayerPos(killerid, x, y, z);
new Float:killer_facing_angle;
GetPlayerFacingAngle(killerid, killer_facing_angle);
new Float:cam_pos_x = x+CAM_DISTANCE*floatsin(-killer_facing_angle, degrees);
new Float:cam_pos_y = y+CAM_DISTANCE*floatcos(-killer_facing_angle, degrees);
SetPlayerCameraPos(playerid, cam_pos_x, cam_pos_y, z);
SetPlayerCameraLookAt(playerid, x, y, z, 1);

$continue$
07.09.2014, 22:31
const Float:CAM_DISTANCE = 5.0;
new Float:x, Float:y, Float:z;
GetPlayerPos(killerid, x, y, z);
new Float:killer_facing_angle;
GetPlayerFacingAngle(killerid, killer_facing_angle);
new Float:cam_pos_x = x+CAM_DISTANCE*floatsin(-killer_facing_angle, degrees);
new Float:cam_pos_y = y+CAM_DISTANCE*floatcos(-killer_facing_angle, degrees);
SetPlayerCameraPos(playerid, cam_pos_x, cam_pos_y, z);
SetPlayerCameraLookAt(playerid, x, y, z, 1);


Вот спасибо, сейчас отличнинько, а можно как то решить проблему, если же игрок убежит (который убил), на него не наведет камеру...

Один вариант, обновлять координаты через таймер?

Seregamil
08.09.2014, 19:40
Один вариант, обновлять координаты через таймер?

http://breedpmnr.ru/i/3F4ACAFF

$continue$
08.09.2014, 20:33
http://breedpmnr.ru/i/3F4ACAFF

И? Все равно не обновляет координаты...



const Float:CAM_DISTANCE = 5.0;
new Float:x, Float:y, Float:z;
GetPlayerPos(killerid, x, y, z);
new Float:killer_facing_angle;
GetPlayerFacingAngle(killerid, killer_facing_angle);
new Float:cam_pos_x = x+CAM_DISTANCE*floatsin(-killer_facing_angle, degrees);
new Float:cam_pos_y = y+CAM_DISTANCE*floatcos(-killer_facing_angle, degrees);
InterpolateCameraPos(playerid, cam_pos_x, cam_pos_y, z, cam_pos_x, cam_pos_y, z, 10000, CAMERA_MOVE);
InterpolateCameraLookAt(playerid, x, y, z, x, y, z, 10000, CAMERA_MOVE);

Seregamil
09.09.2014, 05:30
Советую почитать использование данных функций.

$continue$
09.09.2014, 16:30
Советую почитать использование данных функций.

А что тут не так то?
Я читал..