Кстати, у меня тот же самый вопрос. 
Добавлено (03.10.2009, 13:02)
---------------------------------------------
А я сделала по этой же схеме, только изменила так, что камера ни вокруг игрока вращается, а от какой-либо точки летит к нему. Спасибо за тему. 
Добавлено (15.10.2009, 21:45)
---------------------------------------------
Код тот же что и на первой станице, только одно изменение.
[pwn]
SetPlayerCameraRotate(playerid,x,y,z,0.0,4.0); //В последнем аргументе устанавливаем расстояние от игрока до камеры
SetPlayerCameraLookAt(playerid,x,y,z);
[/pwn]
Дальше заставляем камеру не крутится вокруг игрока, а приближаться к нему вычитая число не из "angle", а из "a" (расстояние от игрока до камеры).
[pwn]
public SetPlayerCameraRotate(playerid,Float:x,Float:y,Float:z,Float:angle,Float:a)
{
if(Camera[playerid] != -1)KillTimer(Camera[playerid]);
Camera[playerid] = -1;
SetPlayerCameraPos(playerid, x+a*floatcos(angle, degrees), y+a*floatsin(angle, degrees), z+0.2);
SetPlayerCameraLookAt(playerid,x,y,z);
Camera[playerid] = SetTimerEx("SetPlayerCameraRotate", 100, false, "d,f,f,f,f,f", playerid, x, y, z, angle,a-0.5);
}
[/pwn]
Всё остальное синхронизируем с кодом из первой страницы данной темы.