Skip to content

UnityEngine

게임을 만들어보자

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

by CroitzK posted Aug 05, 2018 Views 1 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 •
?

C# Code List

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

단축키

Prev이전 문서

Next다음 문서

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

C# Code List



1) 게임종료 코드


      public void GameExit() { //함수의 명칭은 적절하게 설정하면 된다. 
        UnityEditor.EditorApplication.isPlaying = false; //유니티 에터상에서 게임의 실행을 중단하는 옵션이라 추측한다.
        Application.Quit(); //문장그대로 어플리케이션을 닫는것 같다.
    }




2) Scene전환 코드

using UnityEngine;
using System.Collections;
using UnityEngine.SceneManagement;

public class NewGame : MonoBehaviour {

    public void LoadByIndex(int sceneIndex){
        SceneManager.LoadScene (sceneIndex);
    }
}


3) string 변수로 keyboard의 key값 읽어오기.

 string RunKey;

if (Input.GetKey (RunKey)){}

//주의 UnityEditor에서 대문자로 Input값을 입력하면 컴파일 에러난다.ex) 'x'(O) 'X'(X)


4) Input.getKey/getKeyUp/getKeyDown 이란?

Input.GetKey([KeyCode]) : 이녀석은 Turbo Key(?) 효과가 있다.

Input.GetKey​Down([KeyCode]) : 1회 타이핑 또는 누르고 있는 효과를 볼수 있다.

Input.GetKeyUp([KeyCode]) : 위와 동일한듯 하다.



TAG •
?

목록
Board Pagination Prev 1 Next
/ 1

Recent Comment

Counter Info

방문자수

전체 : 281
오늘 : 22
어제 : 19

페이지뷰

전체 : 13,079
오늘 : 619
어제 : 825

COPYRIGHT 2009 by AGMServer.com

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소