유니티_unity

(유니티) 2D 이미지 회전시키기

코딩ABC 2024. 3. 23. 20:58
반응형

유니티, 2D 프로젝트에서 이미지를 회전시키는 방법을 설명합니다.

 

2에서 이미지를 회전하는 방법은 다음과 같습니다.

2D에서는 z값을 이용해서 회전시킵니다. 이 값이 음수이면 시계방향으로 회전하며, 양수이면 반시계 방향으로 회전합니다.

 this.transform.Rotate(0, 0, 각도);    

 

예제

1. 2D 프로젝트를 생성합니다.

2. 아래의 딱정벌래(beetle) 이미지를 다운로드 받고, Asset에 추가합니다.

Beetle 딱정벌래

 

3. Beetle.pgn 이미지를 Sceen에 추가합니다.

4. C# Script를 추가하고, Beetle과 연결합니다 - BeetleController

5. 코드를 작성합니다.

마우스 왼쪽 버튼을 클릭할 때마다 시계 방향으로 30도씩 회전시키는는 코드입니다.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class BeetleController : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        if(Input.GetMouseButtonDown(0))
        {
            this.transform.Rotate(0, 0, -30);
        } 
    }
}

 

6. 실행해 봅니다.

유니티, 이미지 회전시키기

 

다음 코드는 마우스를 클릭하면 이미지를 시계방향으로 계속 회전시키는 코드입니다. 

마우스를 다시 한 번 클릭하면 회전을 멈춥니다.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class BeetleController : MonoBehaviour
{
    float speed = 0.0f;

    // Start is called before the first frame update
    void Start()
    {
        // 프레임율을 60으로 설정한다.
        // Update 함수를 1초에 60번 실행한다.
        Application.targetFrameRate = 60;
    }

    // Update is called once per frame
    void Update()
    {
        if(Input.GetMouseButtonDown(0))
        {
            if(speed == 0) speed = 1;
            else speed = 0;
        }
        this.transform.Rotate(0, 0, -speed);
    }
}

 

유니티, 이미지 회전시키기

 

도전!

마우스를  클릭하면 이미지가 시계 방향으로 계속 회전하고,

또 한 번 클릭하면 회전을 멈춥니다.

다시 클릭하면 이미지가 반시계 방향으로 계속 회전합니다.

마우스를 클릭할때마다 위의 과정이 반복되도록 만들어 봅시다.

반응형