본문 바로가기
모바일/유니티

유니티 | Unity Engine API

by KISCH 2020. 12. 7.
반응형


UnityEngine.Object 클래스


  • 특정 리소스의 인스턴스를 나타내는 직렬화된 데이터 모음
  • Instantiate(게임오브젝트, 만들 위치, 만들 오브젝트의 회전값) as GameObject — 오브젝트를 게임씬에 생성
  • DontDestroyOnLoad — 계속 유지되는 오브젝트를 만들때 사용되는 메서드



UnityEngine API - GameObject 클래스

  • transform 컴포넌트

1. 속성 : position, rotation ...

2. 함수 : Translate, Rotate ...

  • Sprite Renderer 컴포넌트

  • Rigidbody2D 컴포넌트

  • Box Collider2D 컴포넌트

  • Script 컴포넌트

  • public GameObject _enemySet : 게임오브젝트 형으로 선언

  • SetActive (bool) : 오브젝트 활성여부

activeSelf : 부모와 상관없이 자신의 active 상태

activeInHierarchy : 하이어라키상에서 활성상태 여부. 부모 활성여부와 연관

  • GameObject.Find : 스크립트에서 다른 게임 오브젝트를 참조

  • GetComponentInChild : 자식 오브젝트의 컴포넌트 찾기








UnityEngine API - MonoBehaviour 클래스


새로 생성한 모든 Unity 스크립트의 기본이 되는 클래스. MonoBehaviour 레퍼런스는 전체 기능 목록과 게임 오브젝트에 추가할  있는 표준 스크립트 이벤트를 제공하고 에디터와 스크립트를 이어주는 매개체모노비헤이비어를 상속받지 않은 객체는 게임오브젝트 부착  한다


Awake 컴포넌트 참조 (캐시),   호출코루틴 X


Start

  • void Start () {} : 스크립트 호출시  한번 송신, awake 다음

  • 스크립트 인스턴스가 활성화된 경우만 호출 -> 초기화 지연 가능


Update

  • void Update() {} : 프레임이 렌더링될 때마다 렌더링 전에 송신

  • MonoBehaviour 활성화  상태라면  프레임 호출. 보장할 수는 없다.


FixedUpdate

  • 일정한 간격으로 호출 (물리엔진 Time클래스의 fixedDeltaTime속성에 설정된 간격)

  • 물리 연산 처리가 시행되기 전에 호출되는 것이 FixedUpdate 메세지 함수


LastUpdate 모든 Update 함수가 호출된 다음에 호출


OnGUI

  • void OnGUI () {} : 유니티 GUI 포함된 기능을 사용한 GUI 표시하기 위한 메시지

  • 간편하게 GUI 표시


OnDrawGizmos


OnCollisionEnter2D

  • void OnCollisionEnter2D () {} : 게임 오브젝트가Physics2D 컬라이더에충돌한순간송신


OnCollisionStay2D

OnCollisionExit2D

OnTriggerEnter2D

OnTriggerStay2D

OnTriggerExit2D

OnDisenable



UnityEngine API - Transform 클래스

  • transform.rotation : 오브젝트를 회전

  • transform.position : 오브젝트 위치 조정

  • transform.translate(vector3) : 좌측으로 오브젝트 이동

  • transform.parent : 부모 오브젝트 정의

  • transform.FindChild

  • transform.Find("name").gameObject : 자식 오브젝트 찾기



UnityEngine API - Vector 클래스


원점에서 사분면에 따라 vector1, vector2, vector3, vector4

  • Vector2 클래스

  • Vector3 클래스

  • New Vector() : 좌표값 선언

  • Distance : 두 오브젝트 사이의 거리 ex) Vector3.Distance(transform.position, box2.position)

  • magnitude : 벡터의 길이를 반환

  • sqrMagnitude : 벡터의 길이의 제곱한 값을 반환 -> 벡터의 크기 비교 

  • RigidBody2D : 2D전용 물리 계산 담당

  • RigidBody2D.AddForce : Vector2 타입 매개변수를 이용해 해당 방향으로 힘을 가해 움직이게

  • GetComponent<Rigidbody2D>().AddForce

  • Input.touchCount : 현재 터치 카운트

  • Input.GetAxisRaw("Vertical") : 동일하게 된 가상축값을 되돌린다.

  • Input.GetButtonDown() : 키보드 스페이스키, 마우스 왼쪽 클릭, 엑스박스 A버튼

  • Input.GetKey(KeyCode.LeftArrow) : 왼쪽 화살표 누르면

  • Input.GetKeyDown() : 특정한 키를 눌렀는지 여부

  • Input.GetMouseButton() :

  • Input.GetTouch(0).Position : 현재 터치 지점 얻어오기. 0은 싱글, 1은 멀티 터치


Mathf 클래스 : 수학클래스

  • Mathf.Clamp() : 최소, 최대값 제한 수학함수

  • Mathf.Lerp() : 선형보간

  • Mathf.LerpAngle() :


Quaternion 클래스 : 회전 정보를 관리1

  • Quaternion.LookRotation()



UnityEngine API - Time 클래스


Time 클래스 : 시간정보를 얻기 위한 인터페이스


1. 속성

  • time : 게임 시작부터 초 단위까지의 시간

  • timeSinceLevelLoad : 마지막 단계가 로드된 이후로 초 단위 시간


2. Time.daltaTime

  • 시간의 프레임 성능보정

  • 프레임마다 곱해주면 성능에 관계없이 시간마다 동일한 결과


3. Time.timeScale

  • 1.0f : 실제 시간과 같은 속도로 경과

  • 0f : 프레임비유과 독립적으로 모든 기능을 일시정지



유니티클래스






반응형

댓글