티스토리 뷰
728x90
반응형
UnityEngine.UI 버튼으로 캐릭터 조작하기
유니티(UI) 프로젝트에서 화면의 버튼으로 캐릭터를 이동하거나, 공격 등 다양한 인터랙션을 처리할 수 있습니다. 이번 글에서는 UnityEngine.UI의 버튼을 사용하여 간단한 캐릭터 조작을 구현하는 방법을 설명합니다.
1. 버튼 제작 및 연결
먼저 유니티 에디터의 하이어라키 창에서 UI > Button 을 생성하세요. 생성된 버튼에는 기본적으로 Button 컴포넌트가 포함되어 있으며, 여기에 사용자 정의 C# 스크립트를 연결할 수 있습니다.
이 버튼을 사용해 캐릭터를 이동시키기 위해서는, 버튼의 OnClick 이벤트에 스크립트 함수를 연결해야 합니다.
2. 캐릭터 조작 스크립트 작성
다음은 버튼 클릭 시 캐릭터를 특정 방향으로 이동시키는 스크립트의 예입니다.
using UnityEngine;
using UnityEngine.UI;
public class CharacterController : MonoBehaviour
{
public float moveSpeed = 5f; // 캐릭터 이동 속도
public Button moveButton; // 이동 버튼 (UI 버튼)
private void Start()
{
// 이동 버튼에 MoveCharacter 함수를 클릭 이벤트로 등록
moveButton.onClick.AddListener(MoveCharacter);
}
private void MoveCharacter()
{
// 캐릭터를 앞으로 이동시킴 (Z축 방향)
transform.Translate(Vector3.forward * moveSpeed * Time.deltaTime);
}
}
위 코드에서 캐릭터는 버튼이 클릭될 때마다 Vector3.forward 방향으로 일정 속도로 이동합니다. onClick.AddListener 를 사용하여 버튼 클릭 시 호출될 함수를 지정합니다.
3. 유용한 팁
✅ Tip: 다양한 버튼에 각각 다른 기능을 할당하고 싶다면, 함수를 여러 개 만들어 각 버튼의
onClick 에 다른 함수를 할당하세요. 이렇게 하면 단일 스크립트로 여러 동작을 쉽게 처리할 수 있습니다.4. 최종 체크리스트
1. UI 캔버스를 활용해 버튼을 추가합니다.
2. C# 스크립트를 작성하고 동작할 함수를 정의합니다.
3. 버튼의 OnClick 이벤트에 원하는 함수를 연결합니다.
⚠️ 주의: 모든 UI 요소는 캔버스 하위에 있어야 정상적으로 렌더링됩니다. 버튼의 위치와 캔버스 사이즈를 확인하여 의도한 위치에 버튼이 배치되는지 체크하세요.
728x90
반응형
LIST
'Unity > C# 개발 노트' 카테고리의 다른 글
| Unity에서 총알 발사 및 충돌 처리 실습 (0) | 2025.04.06 |
|---|---|
| OnCollisionEnter vs. OnTriggerEnter: Unity에서의 충돌 감지와 이벤트 실행 (0) | 2025.04.05 |
| 유니티에서 점프 기능 구현하기 (0) | 2025.04.03 |
| Unity를 활용한 적 AI 기본 구현: 플레이어를 쫓아오는 적 (0) | 2025.04.03 |
| 클릭 시 오브젝트 이동: Unity C# 예제 (0) | 2025.04.02 |
글 보관함
최근에 올라온 글
160x600
