C#/Unity

[기타내용] 공부할때 썼던 내용들

반나무 2020. 8. 3. 20:34

DOTween 라이브러리 : 2D 이동할 때 사용한다

빠른 PC는 100번 움직이고 느린 PC는 50번 움직일 수 있기 때문에 절대기준인 시간으로 잡았다.

 

Prefab(프리팹) : 재사용 게임 오브젝트

총알이나 몬스터등 실체가 아닌 정보를 가지고있는 오브젝트

 

Rigidbody : 물리엔진

Mass : 질량

Liner Drag : 직선가중치

Angular Drag : 회전가중치

Collision Detection : 충돌시 파악 (Discrete : 웬만하면 기본)

 

Cinemachine : 시네머신

영상처럼 만들수있어서 정말 중요한 카메라

 

Animator : 애니메이션(상태)를 가지고있는 매니저

Transition Duratior : 변하는 속도, 낮을 수록 빠르다

Can Transition To : ani state에서 시작되는건 체크 풀어야 animation이 작동한다.

 

Animation : 하나의 상태를 의미한다

각 프레임마다 이벤트를 추가 할 수있다.( 이벤트 -> C# 메소드 )

 

델리게이트 : 함수를 담을 수 있는 타입

멀티 캐스트로 함수를 추가, 삭제 할 수 있다.

순서대로 추가, 삭제됨(Queue의 형태를 띔)

 

Sendmessage : 원하는게? 있다면 실행하고 없다면 통과함

사용이유 : 원하는게 있는지 없는지 모를때 이름으로 따로 찾아가면 NullReference ERROR가 난다.

 

Collision : 물리처리를 하면서 충돌처리

Trigger : 물리처리는 없이 충돌처리

둘은 상호처리가 된다( 둘다 가질 수 있다!)

 

 

C# 메모리구조

 

Code : 컴파일(기계어로 번역)

Data : static, 전역변수

Stack : 동적할당의 주소(포인터), 멤버변수, 지역변수

Heap : 동적할당부분, new

 

STL : 실행중에 값의 메모리 값을 동적으로 제어함

List : 배열처럼 사용

Dictionary : 이차원배열느낌? key, value로 구분

Queue

Stack

 

디자인패턴

싱글톤패턴

왜 사용하는가? 프로그램 실행 중 클래스를 한개만 사용하기위해

어디서든 손쉽게 사용하기 위해서(Stack과 거의 유사함)

웹만하면 manager 붙는건 싱글톤패턴이라고 생각하면된다

 

옵저버패턴 : UI랑 값 연동할 때 사용한다. 공부해두면 좋다

 

1. SerializeField : public은 아니지만 인스펙터 창에서 공개하기 위해 사용한다.

2. get, set : 다른 클래스의 값을 가져오기 위한 함수

3. MonoBehavior : 유니티에서 C#을 사용할 때 start, update, awake등 기타 필요한 상속

4. Instantiate : 오브젝트 생성함수, new랑 똑같다고 보면됨, 동적할당. 유니티 에디터에서 보이기 위해 하이어라키창에 올리는 작업을 추가해준다

 

Animator Override Controller : 애니메이터를 상속받아 사용할 수 있다.

 

HDRP : PC에서 많이사용

UPR : 더 좋음

 

 

 

반응형