Contents
접기
728x90
이번에는 마우스 이벤트가 발생했을 때 캐릭터를 좌우반전 시켜보자😄
(📖 이편은 전편과 이어집니다. 전편 보러가기 → 캐릭터 방향 전환, 플립(Flip) )
좌우반전방법
if (Input.GetMouseButtonDown(0)) //외부입력장치들의 정보를 담고있는 Input
{
direction *= -1;
renderer.flipX = !renderer.flipX;
}
마우스 이벤트가 발생(마우스 왼쪽 버튼 클릭)했을 경우
direction *=-1 을 했을 경우
direction에 -1을 곱해줌으로써 캐릭터의 방향을 전환해준다.
direction값이 -0.05f(왼쪽 방향)이면 0.05f(오른쪽방향)으로 전환
direction값이 0.05f(오른쪽 방향)이면 -0.05f(왼쪽방향)으로 전환
renderer.flipX = !renderer.flipX 를 했을 경우
renderer.flipX를 통해 캐릭터이미지를 좌우반전 시켜줄 수 있다.
renderer.flipX는 bool형으로, !을 붙여줌으로써 가지고 있는 값의 반대 값(true면 false, false면 true)으로 전환해준다.
renderer.flipX값이 true(왼쪽방향)이면 false(오른쪽방향)으로 전환
renderer.flipX값이 true(왼쪽방향)이면 false(오른쪽방향)으로 전환
마우스 클릭 함수
Input.GetMouseButtonDown은 마우스 버튼을 클릭했을 때 true값을 반환한다.
괄호 안 숫자에 따라 마우스 클릭 값이 다르다.
( 0: 마우스 왼쪽, 1: 마우스 오른쪽, 2: 마우스 가운데(휠) )
마우스 이벤트 함수
GetMouseButton(int button) | 마우스 버튼을 클릭하고 있을 경우(클릭하는 동안) 발생 |
GetMouseButtonDown(int button) | 마우스 버튼을 클릭했을 경우 한번 발생 |
GetMouseButton | 마우스 버튼을 놓았을 경우 한번 발생 |
이렇게 하면 마우스 왼쪽 버튼을 클릭했을 때 캐릭터가 좌우방향으로 반전되어 움직인다!
전체코드
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Rtan : MonoBehaviour
{
float direction = 0.05f;
SpriteRenderer renderer;
// Start is called before the first frame update
void Start()
{
Application.targetFrameRate = 60; // 다른기기 속도 맞춰줌
renderer = GetComponent<SpriteRenderer>(); // Inspector의 SpriteRenderer를 가져옴
}
// Update is called once per frame
void Update()
{
// 마우스 클릭 했을시
if (Input.GetMouseButtonDown(0))
{
direction *= -1; // 방향반전
renderer.flipX = !renderer.flipX; // rendere의 flipX값을 반전(이미지 좌우 반전)
}
// 오른쪽벽에 닿으면
if (transform.position.x > 2.6f)
{
renderer.flipX = true; // 이미지반전(flipx 체크)
direction = -0.05f; // 왼쪽으로 출발
}
// 왼쪽벽에 닿으면
if (transform.position.x< -2.6f)
{
renderer.flipX = false; // 이미지 반전(flipx 체크 품)
direction = 0.05f; // 오른쪽으로 출발
}
transform.position += Vector3.right * direction;
}
}
클릭클릭클릭클릭
728x90
'GameDevelop > Unity기초쌓기' 카테고리의 다른 글
[Unity] Tag생성 (0) | 2025.03.27 |
---|---|
[Unity] 중력,충돌로 빗방울구현 Rigidbody,Collider (0) | 2025.03.27 |
[Unity] 캐릭터 방향 전환, 플립(Flip) (0) | 2025.03.25 |
[Unity] x값 이동 애니메이션 (0) | 2025.03.20 |
[Unity] 스크립트 생성 (0) | 2025.03.20 |