Skip to content

[UnityEngine] 2D 캐릭터 Sprite의 움직임 효과 구성.

by CroitzK posted Aug 05, 2018 Views 403 Likes 0 Replies 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

C# - 2D캐릭터 Sprite의 움직임효과 구성하기


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

public class PlayerMovement : MonoBehaviour {

    Rigidbody2D rbody;
    Animator anim;

    // Use this for initialization
    void Start () {
        rbody = GetComponent<Rigidbody2D> ();
        anim = GetComponent<Animator> ();
    }
    
    // Update is called once per frame
    void Update () {
        Vector2 Movement_Vector = new Vector2 (Input.GetAxisRaw ("Horizontal"), Input.GetAxisRaw ("Vertical"));

        if (Movement_Vector != Vector2.zero) {
            anim.SetBool ("isWalking", true);
            anim.SetFloat ("Input_x", Movement_Vector.x);
            anim.SetFloat ("Input_y", Movement_Vector.y);
        } else {
            anim.SetBool ("isWalking", false);
        }

        rbody.MovePosition (rbody.position + Movement_Vector * Time.deltaTime * 3);
    }
}


!코드내용 자체 해석


Rigidbody2D , Animator 참조 선언.

​Start() 함수에서 컴포넌트 정보를 취득.

Update() 함수에서 ​Vector2 참조 선언 Input.GetAxisRaw 옵션으로, Horizontal(수평), Vertical(수직) 입력값의 취득.

취득한 Animator 오브젝트에서 isWalking, Input_x, Input_y 값에 따른 Vector2 값을 취득한 다음 Bool, Flaot 값을 대입한다.

Rigidbody2D 오브젝트의 이동위치를 Rigidbody2D 오브젝트의 현재위치 + Vector2 값 * Time.deltaTime (시간차?) 값으로. 

 

TAG •
?

Calender

2020.07
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

Time Info

Counter Info

방문자수

전체 : 44,975
오늘 : 23
어제 : 45

페이지뷰

전체 : 1,614,048
오늘 : 212
어제 : 686

COPYRIGHT 2009 by AGMServer.com

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소