Minecraft 프로젝트의 경우 플레이어의 얼굴을 (0, 60, 0)으로 서서히 만들고 싶었습니다. 지금까지 내가 시도한 모든 것은 플레이어가 (0, 60, 0) 주변을 720 ° 이상 움직일 때 실패한 것으로 보입니다.Minecraft가 플레이어의 방향을 서서히 수정 함
누구나 카메라를 (0, 60, 0)으로 원활하게 이동시키는 방법에 대한 아이디어가 있습니까?
감사합니다.
다음은 지금까지 (전환 할 때 루프에서 실행) 내 코드입니다 :int x = 0;
int y = 60;
int z = 0;
player = Minecraft.getMinecraft().thePlayer;
double dirx = player.posX - 0;
double diry = player.posY - 60;
double dirz = player.posZ - 0;
double len = Math.sqrt(dirx*dirx + diry*diry + dirz*dirz);
dirx /= len;
diry /= len;
dirz /= len;
double pitch = Math.asin(diry);
double yaw = Math.atan2(dirz, dirx);
//to degree
pitch = pitch * 180.0/Math.PI;
yaw = yaw * 180.0/Math.PI;
yaw += 90f;
if(yaw > player.rotationYaw) {
player.rotationYaw++;
} else if(yaw < player.rotationYaw) {
player.rotationYaw--;
}
편집 : 문이 제대로 작동하는 경우없이
이 코드. 요와 피치 변수는도 단위입니다.
나는 몇 분 동안 (0, 60, 0)을 돌아볼 때마다 화면이 갑자기 360 ° 선회한다는 사실을 분명히 알지 못합니다.
플레이어가 현재보고있는 방향에서 회전하고 싶습니까? 전 세계 또는 플레이어와 관련된 위치를보고자하는 위치는 무엇입니까? 'player.rotationYaw'는도 또는 라디안입니까? – ManIkWeet
@ManIkWeetYearYaw는 제가 알고있는 각도입니다. – Pokechu22
@ ManIkWeet 각도가 – JustAJavaCoder